MFC 用C++语言把Text控件移动到slider控件下面开头五分之一的位置
时间: 2023-10-04 19:07:09 浏览: 141
MFC 文本编辑器C++
5星 · 资源好评率100%
您可以使用以下代码将MFC中的Text控件移动到Slider控件下面开头五分之一的位置:
```cpp
CWnd* pSlider = GetDlgItem(IDC_SLIDER1);
CRect rectSlider;
pSlider->GetWindowRect(&rectSlider);
ScreenToClient(&rectSlider);
CWnd* pText = GetDlgItem(IDC_TEXT1);
CRect rectText;
pText->GetWindowRect(&rectText);
ScreenToClient(&rectText);
// 将Text控件的左边缘移动到Slider控件的左边缘
rectText.left = rectSlider.left;
// 将Text控件的顶部移动到Slider控件下面的开头五分之一处
int height = rectSlider.Height();
rectText.top = rectSlider.bottom + height / 5;
// 设置Text控件的新位置
pText->MoveWindow(rectText);
```
其中,IDC_SLIDER1和IDC_TEXT1分别表示Slider和Text控件的ID。需要注意的是,在调用GetWindowRect函数之前,需要先获取到控件的指针,这里使用了GetDlgItem函数。另外,由于GetWindowRect函数返回的是屏幕坐标,所以需要使用ScreenToClient函数将其转换为客户端坐标。
阅读全文