由于以前设计到界面的设计非常少,但现在的工作涉及到这个,所以记下来,怕以后还遇到类似的问题。
在调整界面的时候,需要移动一个按钮,但是只要一移动,问题来了,在对话框上,死活显示不出来,原始代码如下:
m_but.GetWindowRect(&rc);
m_but.MoveWindow(&rc);
后来记起来了,有个屏幕坐标和和逻辑坐标的问题。
GetWindowRect获取的是按钮的屏幕坐标,需要把它转成对话框坐标才行。
m_but.GetWindowRect(&rc);
ScreenToClient(&rc); //此处把屏幕坐标转为对话框的逻辑坐标
m_but.MoveWindow(&rc);
OK