对窗口的相关操作

来源:互联网 发布:structure软件说明 编辑:程序博客网 时间:2024/06/05 23:01

1、获得指定点的窗口:

 //获得指定点的窗口
 CWnd* pWnd = WindowFromPoint(point);

2、如何最小化、最大化、关闭窗口

 //最小化窗口
 SendMessage(WM_SYSCOMMAND, SC_MINIMIZE, 0); 
  //最大化窗口
  SendMessage(WM_SYSCOMMAND, SC_MAXIMIZE, 0); 
 //关闭窗口
 SendMessage(WM_CLOSE, 0, 0);

3、如何获得和设置窗口标题

 CString strText = _T("");

 //获得窗口标题
 GetWindowText(strText);

 //设置窗口标题
 SetWindowText(strText);

4、如何删除和添加标题栏

 //删除标题栏风格
  ModifyStyle(WS_CAPTION, 0, SWP_FRAMECHANGED);

 //添加标题栏风格
  ModifyStyle(0, WS_CAPTION, SWP_FRAMECHANGED); 

5、如何改变窗口形状(以矩形为例)

 CRect rect;
 GetClientRect(rect);

 //创建矩形区域
 CRgn rgn;
 rgn.CreateRectRgn(rect.left, rect.top, rect.right, rect.bottom);

 //设置窗口的区域
 SetWindowRgn((HRGN)rgn, TRUE);

 

6、获得桌面窗口

 //获得桌面窗口
 CWnd* pWnd = CWnd::GetDesktopWindow();

7、获得任务栏窗口

 //获得任务栏窗口
 CWnd* pWnd = CWnd::FindWindow(_T("Shell_TrayWnd"), NULL);

8、使桌面所有窗口最小化

 //获得任务栏窗口
 CWnd* pWnd = CWnd::FindWindow(_T("Shell_TrayWnd"), NULL);

 //发送ID为0x1F5(Win + M)的WM_HOTKEY消息
 pWnd->SendMessage(WM_HOTKEY, 0x1F5);

 

原创粉丝点击