GetWindow函數的用法有很多,通過傳遞不同的窗口參數,可以返回不同的窗口列表,傳遞GW_HWNDFIRST可以獲得窗口Z-Order的所有WINDOWS。下面的函數把所有的Z-Order窗口名稱添加到一個CListBox中:
//獲取任務列表且添加到列表框中
BOOL GetAppList(CListBox &LstBox)
{
????????CString strCaption;
????????LstBox.ResetContent();
????????ASSERT_VALID(AfxGetMainWnd());
????????CWnd *pWnd=AfxGetMainWnd()->GetWindow(GW_HWNDFIRST);
????????if(pWnd==NULL)?
???????????????return FALSE;
????????while(pWnd)
????????{
???????????????if(pWnd->IsWindowVisible() && pWnd->GetWindowTextLength() && !pWnd->GetOwner())
??????????????{
??????????????????????pWnd->GetWindowText(strCaption);
??????????????????????LstBox.AddString(strCaption);
??????????????}
???????????????pWnd=pWnd->GetWindow(GW_HWNDNEXT);
????????}
????????return TRUE;
}