SetWindowPos怎么没起作用呀?晕菜!!
CRect rect;
GetDlgItem(IDC_AreaTree)-> GetClientRect(&rect);
ClientToScreen(&rect);
CRect rect1;
GetClientRect(&rect1);
::SetWindowPos(GetDlgItem(IDC_AreaTree)-> m_hWnd,HWND_TOPMOST,rect.right,
rect.bottom,rect1.right-rect1.left,
rect1.bottom-rect1.top,NULL);
GetDlgItem(IDC_AreaTree)-> ShowWindow(SW_SHOW);
[解决办法]
::SetWindowPos(GetDlgItem(IDC_AreaTree)-> m_hWnd,HWND_TOPMOST,rect.right,
rect.bottom,rect1.right-rect1.left,
rect1.bottom-rect1.top,SWP_FRAMECHANGED);
[解决办法]
::SetWindowPos(GetDlgItem(IDC_AreaTree)-> m_hWnd,HWND_TOPMOST,rect.right,
rect.bottom,rect1.right-rect1.left,
rect1.bottom-rect1.top,SWP_SHOWWINDOW);
[解决办法]
CRect rect;
GetDlgItem(编辑框控件ID)-> GetClientRect(&rect);
GetDlgItem(编辑框控件ID)-> ClientToScreen(&rect);
ScreenToClient(&rect);
::SetWindowPos(GetDlgItem(IDC_AreaTree)-> m_hWnd,HWND_TOPMOST,rect.left, rect.bottom,0,0,SWP_SHOWWINDOW|SWP_NOSIZE|SWP_NOZORDER);
[解决办法]
你不就是要点击某个Edit的时候,把tree移到它的下面吗?
移动到的坐标是(rect.left, rect.bottom)这个不刚好是Edit的左下角么?
参数SWP_NOSIZE根本不会改变tree的大小阿。
你真的试过么?
[解决办法]
三种方法,可以使tree位于最前端,只有tree覆盖其他的,其他的盖不了tree。
任选其一:
1、打开对话框资源的对话框界面,Ctrl+D,先选中tree,使得其编号为1,保留SWP_NOZORDER参数。
2、编辑.rc文件,把tree控件提到最前面去,保留SWP_NOZORDER参数。
3、::SetWindowPos(GetDlgItem(IDC_AreaTree)-> m_hWnd,NULL,rect.left, rect.bottom,0,0,SWP_SHOWWINDOW|SWP_NOSIZE);去掉SWP_NOZORDER参数,前面第二个参数为NULL。