Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Az MFC a CWnd osztályt biztosítja az HWND ablak fogantyújának beágyazásához. Az CWnd objektum egy C++ ablakobjektum, amely különbözik a HWND Windows-ablakot ábrázoló, de azt tartalmazó objektumtól. Használja a CWnd saját gyermekablakosztályok létrehozásához, vagy vegye igénybe a sok MFC-osztály egyikét, amelyiket a CWnd származtatta. Az osztály CWnd az összes ablak alaposztálya, beleértve a keretablakokat, a párbeszédpaneleket, a gyermekablakokat, a vezérlőket és a vezérlősávokat, például az eszköztárakat. A C++ ablakobjektum és a HWND közötti kapcsolat jó ismerete elengedhetetlen az MFC-vel való hatékony programozáshoz.
MFC néhány alapértelmezett funkciót és ablakkezelést biztosít, de származtathat saját osztályt a CWnd-ból, és a tagfüggvényeivel testre szabhatja a biztosított funkciókat. Gyermekablakok létrehozásához hozzon létre egy CWnd objektumot, és hívja meg annak Taglétrehozási függvényét, majd szabja testre a gyermekablakokat tagfüggvények használatával CWnd .
A CView-ból származó objektumokat, például űrlapnézeteket vagy fanézeteket beágyazhatja egy keretablakba. A dokumentumok több nézetét is támogathatja a CSplitterWnd osztály által biztosított felosztópaneleken keresztül.
Az osztályból CWnd származó összes objektum tartalmaz egy üzenettérképet, amelyen keresztül windowsos üzeneteket vagy parancsazonosítókat képezhet le a saját kezelőihez.
A Windows programozásával kapcsolatos általános szakirodalom jó forrás a tagfüggvények használatának CWnd elsajátításához, amely magában foglalja az HWND API-kat.
Függvények CWnd műveleteihez
CWnd
és a származtatott ablakosztályok konstruktorokat, destruktorokat és tagfüggvényeket biztosítanak az objektum inicializálásához, az alapul szolgáló Windows-struktúrák létrehozásához és a beágyazott HWNDelemek eléréséhez.
CWnd Olyan tagfüggvényeket is biztosít, amelyek a Windows API-kat az üzenetek küldéséhez, az ablak állapotának eléréséhez, a koordináták konvertálásához, a frissítéshez, a görgetéshez, a vágólap eléréséhez és sok más feladathoz foglalják össze. A legtöbb windowsos ablakkezelési API-t, amely HWND argumentumot vesz fel, a rendszer CWnd tagfüggvényeként kapszulázza. A függvények neve és paraméterei megmaradnak a CWnd tagfüggvényben. A Windows API-kkal kapcsolatos részletekért lásd a CWnd osztályt.
CWnd és Windows-üzenetek
Az egyik elsődleges cél CWnd az, hogy felületet biztosítson a Windows-üzenetek kezeléséhez, például WM_PAINT vagy WM_MOUSEMOVE. A CWnd sok tagfüggvénye a standard üzenetek kezelője — azok, amelyek az afx_msg azonosítóval kezdődnek és az "On" előtaggal, mint például OnPaint és OnMouseMove.
Az üzenetkezelés és -leképezés részletesen ismerteti az üzeneteket és az üzenetek kezelését. Az ott található információk ugyanúgy vonatkoznak a keretrendszer ablakára és azokra, amelyeket ön különleges célokra hoz létre.
Mit szeretne többet megtudni
Ablakobjektumokkal való munka
Eszközkörnyezetek: olyan objektumok, amelyek függetlensé teszik a Windows-rajzeszközöket
Grafikus objektumok: tollak, ecsetek, betűtípusok, bitképek, paletták, régiók