命令傳送
您在使用命令的責任只限於建立訊息對應命令和其處理函式,您使用 [屬性] 視窗的工作之間的連線。 您也必須撰寫大部分的命令處理常式。
Windows 訊息通常傳送至主框架視窗中,但是命令訊息會被傳送到其他物件。 架構會傳送標準序列的命令目標物件時,其中應該要有命令處理常式的命令。 每一個命令目標物件檢查它的訊息對應,以查看是否可以處理內送訊息。
不同的命令目標類別檢查他們自己的訊息對應在不同的時間。 一般來說,類別會傳送命令到特定其他物件,取得它們初次出現在命令。 如果這些物件沒有一個處理命令時,原始的類別就會檢查它自己的訊息對應。 然後,如果它無法提供本身的處理常式,它可能會將命令傳送給還更多的命令目標。 表格標準命令傳送下面會顯示每個類別如何架構此順序。 在其中一個命令目標傳送命令的一般順序為:
若要它目前作用中子命令目標物件。
到本身位置。
為其他命令的目標。
需耗費的資源是這個傳送機制? 相較於您的處理常式會執行命令的回應,路由的成本很低。 請記住架構會產生命令只有在使用者與使用者介面物件互動時。
標準命令傳送
當這個型別的物件會接收到命令。 . . |
它給本身和其他命令目標物件一個機會來處理順序如下命令: |
---|---|
MDI 框架視窗 (CMDIFrameWnd) |
|
文件框架視窗 (CFrameWnd, CMDIChildWnd) |
|
檢視 |
|
Document |
|
對話方塊 |
|
在上表中的第二欄中的編號項目更別提其他物件,例如文件,請參閱第一欄中的對應項目。 舉個例說,當您閱讀第二欄中的檢視會轉送命令給它的文件時,請參閱 「 文件 」 中的項目繼續傳送下去的第一欄。