MFC 獲取當前活動窗口的句柄

::AfxGetApp()-> GetMainWnd()->GetSafeHwnd()和::AfxGetMainWnd()->GetSafeHwnd()

 

單線程中兩個函數的結果是相同的。 
如果是多線程則不同。前者是主線程的。 
後者是單前所在的線程的。

 

AfxGetApp( )是全局的。
AfxGetApp( )這個函數可以得到當前應用進程的指針,是CWinApp*類型的,通過這個指針可以訪問到這個進程中的對象。

 

如果子線程只是一個函數線程的話,在其內使用 ::AfxGetMainWnd()->GetSafeHwnd() 結果爲 NULL. 

 

GetActiveWindow

函數功能:該函數可以獲得與調用線程的消息隊列相關的活動窗口的窗口句柄。  函數原型:HWND GetActiveWindow(VOID)  參數:無。

  返回值:返回值是與調用線程的消息隊列相關的活動窗口的句柄。否則,返回值爲NULL。

如果在主窗口線程中使用,則獲取的是該窗口句柄,若在函數子線程內使用,則爲NULL;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章