MFC訊息機制初級心得

2021-06-16 15:02:15 字數 985 閱讀 9888

在windows程式設計中,與以往的面向過程的dos程式中最大的不同是,window採用的是訊息驅動機制,即程式中的事件都是由訊息來驅動的。

訊息機制的實現如:

在本例中我們呼叫執行緒完成http傳送任務,等待執行緒任務結束,傳送訊息給主線程,等待對話方塊響應顯示任務完成資訊字樣。

1,首先在global.h檔案中定義巨集 wm_update_msg 用來表示資料更新

//file  global.h

#define wm_update_msg

wm_user+5

2,在對話方塊類標頭檔案中新增用來訊息響應成員函式

lresult onupdatestate(wparam wparam, lparam lparam);

並在cpp檔案中實現訊息響應函式

lresult calterparamdlg::onupdatestate(wparam wparam, lparam lparam)

3,在對話方塊類cpp檔案中新增訊息對映如紅色字型,表示對於訊息

wm_update_msg

用onupdatestate()

函式響應

//file dialog.cpp

begin_message_map(calterparamdlg, cdialog)   //訊息--動作 對映表

on_wm_syscommand()

on_wm_paint()

on_wm_querydragicon()

//}}afx_msg_map                

on_bn_clicked(idok, onbnclickedalter)

on_bn_clicked(idcancel, onbnclickedcancel)

on_message(wm_update_msg, onupdatestate)     //訊息繫結  前者發生呼叫後者響應

on_wm_destroy()

end_message_map()

MFC 訊息機制

windows應用程式是通過訊息驅動的,在mfc軟體開發時,進行介面操作經常要用到訊息,通過訊息對應的處理函式來實現響應的操作。比如,使用者操作視窗,就會產生訊息,送給對應的訊息處理函式進行處理,對使用者的操作做出一些反應。mfc使用訊息對映機制來處理訊息,具體表現就是訊息和訊息處理函式一一對應的訊...

MFC訊息機制

一 訊息的分類 1 佇列訊息 非佇列訊息 l佇列訊息 windows 為每個應用程式都建立乙個訊息佇列,那麼通過訊息佇列,進行傳送的訊息都屬於佇列訊息 一般來說,由滑鼠 鍵盤產生的訊息都屬於佇列訊息。為什麼呢?想想,滑鼠 鍵盤事件都是由系統捕獲的,系統捕獲後要傳遞給應用程式,就一定的通過訊息佇列 l...

MFC訊息對映機制

一 mfc中採用的這種訊息處理機制成為 mfc訊息對映機制 乙個mfc訊息響應函式在程式中有三處相關資訊 函式原型,函式實現,關聯訊息和訊息響應函式的巨集。函式原型 標頭檔案cdrawview 兩個afx msg注釋巨集之間 訊息響應函式原型的宣告 afx msg void onlbuttondow...