Megosztás:


Parancs útválasztása

A parancsok használata során az Ön felelőssége az, hogy üzenettérkép-kapcsolatokat létesítsen a parancsok és azok kezelőfüggvényei között, amelyekhez az MFC osztályvarázslót használja. A parancskezelők kódját is meg kell írnia.

A Windows-üzenetek általában a fő keretablakba kerülnek, de a parancsüzenetek más objektumokhoz lesznek irányítva. A keretrendszer parancsokat irányít a parancsok célobjektumainak szabványos sorozatán keresztül, amelyek közül az egyiknek rendelkeznie kell egy kezelővel a parancshoz. Minden parancs-célobjektum ellenőrzi az üzenettérképét, hogy képes-e kezelni a bejövő üzenetet.

A különböző parancs-célosztályok különböző időpontokban ellenőrzik a saját üzenettérképeiket. Az osztály általában bizonyos más objektumokhoz irányítja a parancsot, hogy első esélyt adjon nekik a parancsra. Ha egyik objektum sem kezeli a parancsot, az eredeti osztály ellenőrzi a saját üzenettérképét. Azután, ha nem tud kezelőt biztosítani, a parancsot továbbíthatja még további parancscélokhoz. Az alábbi Standard parancsútvonal táblázat bemutatja, hogy az egyes osztályok hogyan építik fel ezt a sorozatot. Az az általános sorrend, amelyben a parancscél átirányítja a parancsot:

  1. A jelenleg aktív gyerekparancs-célobjektumához.

  2. Saját magának.

  3. Más parancscélokra.

Mennyire költséges ez az útválasztási mechanizmus Ahhoz képest, amit a kezelő parancsra válaszul végez, az útválasztás költsége alacsony. Ne feledje, hogy a keretrendszer csak akkor hoz létre parancsokat, ha a felhasználó egy felhasználói felületi objektummal kommunikál.

Standard parancsútvonal

Amikor egy ilyen típusú objektum kap egy parancsot. . . Lehetőséget ad magának és más parancs-célobjektumoknak a parancs ebben a sorrendben történő kezelésére:
MDI keretablak (CMDIFrameWnd) 1. Aktív CMDIChildWnd
2. Ez a keretablak
3. Alkalmazás (CWinApp objektum)
Dokumentumkeret ablaka (CFrameWnd, CMDIChildWnd) 1. Aktív nézet
2. Ez a keretablak
3. Alkalmazás (CWinApp objektum)
Megtekintés 1. Ez a nézet
2. A nézethez csatolt dokumentum
Dokumentum 1. Ez a dokumentum
2. A dokumentumhoz csatolt dokumentumsablon
Párbeszédablak 1. Ez a párbeszédpanel
2. A párbeszédpanelt tartalmazó ablak
3. Alkalmazás (CWinApp objektum)

Ha az előző tábla második oszlopában számozott bejegyzések említenek más objektumokat, például egy dokumentumot, tekintse meg az első oszlop megfelelő elemét. Például, amikor a második oszlopban azt olvassa, hogy a nézet parancsot továbbít a saját dokumentumának, nézze meg az első oszlopban található "Dokumentum" bejegyzést, hogy tovább követhesse az útvonalat.

Lásd még

Hogyan hívja meg a keretrendszer a kezelőt