如何取得桌面窗口矩形大小?mfc
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何取得桌面窗口矩形大小?mfc相关的知识,希望对你有一定的参考价值。
参考技术A GetWindowRect(hWnd,&rect);
hWnd是桌面
窗口句柄
,rect就是你要的矩形
用这几句获取桌面所有窗口句柄:
HWND
hWnd
=
::GetDesktopWindow();
hWnd
=
::GetWindow(hWnd,
GW_CHILD);
while(hWnd
)
hWnd
=
::GetWindow(hWnd,
GW_HWNDNEXT);
用
这几句得到
鼠标
所在窗口句柄:
GetCursorPos(&ptMouse);
hWnd
=
::WindowFromPoint(ptMouse);
while(::GetParent(hWnd)
!=
DeskHwnd
&&
hWnd
!=
DeskHwnd
&&
::GetParent(hWnd)
!=NULL)
hWnd
=
::GetParent(hWnd);
MFC设置控件和窗口位置
一。控件
CRect rect;//矩形
m_pic.GetWindowRect(rect); //得到控件矩形信息
m_pic.MoveWindow(0, 0, SavedImage.cols, SavedImage.rows); //设置控件位置(相对于客户区), 大小
二。窗口
1 CWnd* pWnd1 = GetDlgItem(IDD_MFC_OPENCV_DIALOG);//获得句柄
2 SetWindowPos(pWnd1, x, y, SavedImage.cols+15, SavedImage.rows+58, SWP_SHOWWINDOW);//设置窗口位置,大小
GetWindowRect(rect); //得到窗口位置,大小
以上是关于如何取得桌面窗口矩形大小?mfc的主要内容,如果未能解决你的问题,请参考以下文章