程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> vc教程 >> 關於VC++中菜單消息的路由過程

關於VC++中菜單消息的路由過程

編輯:vc教程

我們經常使用VC6.0 的菜單來完成某些任務。但是你有沒有深究其路由的過程呢?

我們添加一個菜單,並在視類 文檔類 框架類 應用程序(即:C*App類)添加他的消息響應函數時,它的執行順序是什麼?

順序是:視類-->文檔類-->框架類-->應用程序

Windows 的消息分為三類:
標准消息:
除WM_COMMAND 之外的,以WM_開頭的消息。
命令消息:
來自菜單,工具欄,加速鍵(快捷鍵)的消息
通知消息:
由空間產生的(如按鈕)

而命令消息,通知消息只能被從CCmdTarget派生的類處理,不能接受標准消息。標准消息由從CWnd派生的類處理。

當單擊命令菜單時,首先接收消息的是框架類,然後框架類交給視類,視類根據消息映射機制看能否處理,不能則交給文檔類。

文檔類處理過程同視類。假如不能處理,則交給視類,由視類交給框架類,框架類根據消息映射機制看能夠處理。不能則交給應用程序類處理。

不當之處,請提出。

你在提高,我也在進步。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved