MFC中獲取主視窗指標

2021-05-23 23:25:26 字數 697 閱讀 9511

mfc中

獲取主視窗指標

2010/07/14 14:44

afxgetmainwnd

cwnd* afxgetmainwnd( );

返回值:

如果伺服器具有乙個可以在容器內現場啟用的物件,並且這個容器是活動的,則這個函式返回乙個指向包含這個現場活動文件的框架視窗物件的指標。

如果沒有可以在容器內現場啟用的物件,或者你的應用程式不是乙個ole伺服器,這個函式僅返回你的應用程式物件的m_pmainwnd。

如果afxgetmainwnd被應用程式主線程呼叫,它根據以上規則返回應用程式的主視窗。

如果該函式被應用程式的次執行緒呼叫,該函式返回與引起該呼叫執行緒連線的主視窗。

說明:

如果你的應用程式是乙個ole伺服器,應該呼叫這個函式以獲得應用程式的活動主視窗指標,而不是直接引用應用程式物件的m_pmainwnd成員。

如果你的應用程式不是ole伺服器,那麼呼叫這個函式與直接引用應用程式物件的 m_pmainwnd成員是等價的。

以上是msdn中的說明,看字型顏色為紅色的那句話,如果你不是在主線程中呼叫 afxgetmainwnd(),那麼你就得不到程式的主視窗,正如我現在做的乙個程式中用到的ui執行緒

所以,在非主線程中獲得主視窗指標,可以通過下列語句

MFC中獲取指標

獲取工具條的指標 在預設狀態下,有乙個預設的工具條afx idw 我們可以根據相應的id去獲取工具條指標,方法如下 c p c afxgetmainwnd getdescendantwindow afx idw 是不是很簡單?獲取狀態條的指標 在預設狀態下,有乙個預設的狀態條afx idw stat...

修改MFC主視窗標題

在vs2010下新建乙個mfc的多文件應用程式,程式預設的標題是 文件名 工程名 圖示預設的是寫著mfc的三個方塊。但在很多軟體中都不是使用的預設設定,開發者們都將標題和圖示改過,以符合專案要求,而且直觀好看。一.修改標題 標題分為前後兩部分,前面一部分預設是文件名,後面一部分預設是工程名,比如我新...

mfc指標獲取

1 獲取應用程式指標2 獲取主框架指標或者 cmainframe pmainframe cmainframe afxgetmainwnd 獲取選單指標 cmenu pmenu afxgetmainwnd getmenu 獲取工具欄 狀態列指標 主框架中可以直接使用m wnd m wndstatusb...