查找窗口、窗口置顶、获取窗口的文本

//窗口置顶

 1 CWnd *wnd = CWnd::FindWindow(NULL, _T("test.txt - 记事本"));//通过窗口名
 2 
 3 if (wnd)
 4 
 5 {
 6 
 7     wnd->ShowWindow(SW_NORMAL);//显示窗口
 8 
 9     wnd->SetForegroundWindow();//设为前台窗口
10 
11     ::SetWindowPos(wnd->m_hWnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);//置顶
12 
13 }

 

 

 如果不用MFC的类,也可以直接用API函数

1     HWND hwnd=::FindWindow(_T("notepad"),NULL);//这里用spy++获取记事本窗口的类名
2     if(hwnd)
3     {
4         HWND hwnd2=::FindWindowEx(hwnd,NULL,_T("Edit"),NULL);//查找记事本下类名为Edit的窗口,即记事本工作区
5         TCHAR sz[255];
6         ::SendMessage(hwnd2,WM_GETTEXT,255,(LPARAM)sz);//向该窗口发送消息,获取该窗口的文字。
7         CString str(sz);
8         MessageBox(str);
9     }

 

你可能感兴趣的:(MFC)