- void CFindDlg::OnBtnFind()
- {
- HWND hWnd;
- if (hWnd = /*::FindWindow(NULL, _T("Log View"))*/FindWindowEx())
- {
- // AfxMessageBox(_T("find!"));
- }
- AfxMessageBox(_T("end"));
- }
- //双层递归查找子窗口与兄弟窗口//可以使用队列轻松解决此问题,但是得小心释放内存
- HWND CFindDlg::FindWindowEx(HWND hwndParent, HWND hwndChildAfter, LPCTSTR lpszClass, LPCTSTR lpszWindow)
- {
- HWND hWndFind, hWnd;
- if (hWndFind = ::FindWindowEx(hwndParent, hwndChildAfter, lpszClass, lpszWindow))
- {
- // TCHAR strTitle[256];
- // ::GetWindowText(hWndFind, strTitle, 256);
- // TRACE(_T("%s/n"), strTitle);
- if (hWnd = ::FindWindowEx(hwndParent, hwndChildAfter, NULL, _T("Item View")))
- {
- m_hFindWnd = hWnd;
- AfxMessageBox(_T("find!"));
- return hWnd;
- }
- FindWindowEx(hWndFind, NULL, lpszClass, lpszWindow);
- FindWindowEx(hwndParent, hWndFind, lpszClass, lpszWindow);
- }
- return NULL;
- }
- HWND CFindDlg::FindWindowEx()
- {
- return FindWindowEx(NULL, NULL, NULL, NULL);
- }
- HWND CFindDlg::FindSibling(HWND hWndParent, HWND hwndChildAfter, LPCTSTR lpszClass, LPCTSTR lpszWindow)
- {
- HWND hWnd;
- // if (hWnd = FindWindowEx(hWndParent,
- return NULL;
- }
- HWND CFindDlg::FindChildren(HWND hWndParent, HWND hwndChildAfter, LPCTSTR lpszClass, LPCTSTR lpszWindow)
- {
- HWND hWnd;
- // if (hWnd = FindWindowEx(hWndParent, NULL, lpszClass, lpszWindow))
- // return FindWindowEx(hwndParent, hWnd, lpszWindow);
- return NULL;
- }
查找窗口
最新推荐文章于 2019-05-14 17:09:27 发布