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.
A Windows különféle rajzeszközöket biztosít az eszközkörnyezetekben való használathoz. Tollakkal rajzolhat vonalakat, keféket a belső terek kitöltéséhez, valamint betűtípusokat a szöveg rajzolásához. Az MFC a Windows rajzeszközeinek megfelelő grafikus objektumosztályokat biztosít. Az alábbi táblázat a rendelkezésre álló osztályokat és az azzal egyenértékű Windows grafikus eszköz interfész (GDI) leírótípusokat mutatja.
Megjegyzés:
További információkért tekintse meg a GDI+ SDK dokumentációját.
Ez a cikk a következő grafikus objektumosztályok használatát ismerteti:
Osztályok Windows GDI-objektumokhoz
| Osztály | Windows-leíró típusa |
|---|---|
| CPen | HPEN |
| CBrush | HBRUSH |
| CFont | HFONT |
| CBitmap | HBITMAP |
| CPalette | HPALETTE |
| CRgn | HRGN |
Megjegyzés:
A CImage osztály továbbfejlesztett bitképtámogatást biztosít.
Az osztálytár minden grafikus objektumosztálya rendelkezik egy konstruktorsal, amely lehetővé teszi az osztály grafikus objektumainak létrehozását, amelyeket ezután inicializálni kell a megfelelő létrehozási függvénnyel, például CreatePen.
Az osztálytár minden grafikus objektumosztálya rendelkezik egy öntött operátorral, amely egy MFC-objektumot küld a társított Windows-leíróhoz. Az eredményként kapott hivatkozás addig érvényes, amíg a társított objektum le nem választja. Az objektum Detach tagfüggvényének használatával válassza le a fogantyút.
A következő kód egy CPen objektumot egy Windows-leíróvá alakít.
CPen myPen;
myPen.CreatePen(PS_COSMETIC, 1, RGB(255, 255, 0));
HPEN hMyPen = (HPEN)myPen;
Grafikus objektum létrehozása eszközkörnyezetben
Grafikus objektum definiálása a veremkereten. Inicializálja az objektumot a típusspecifikus létrehozási függvénnyel, például
CreatePen. Másik lehetőségként inicializálja az objektumot a konstruktorban. Tekintse meg az egy- és kétfázisú létrehozást, amely példakódot tartalmaz.Jelölje ki az objektumot az aktuális eszközkörnyezetbe, és mentse a korábban kijelölt régi grafikus objektumot.
Ha elkészült az aktuális grafikus objektummal, jelölje ki a régi grafikus objektumot az eszközkörnyezetbe az állapot visszaállításához.
A hatókör kilépésekor a kerettel lefoglalt grafikus objektum automatikus törlésének engedélyezése.
Megjegyzés:
Ha egy grafikai objektumot ismételten használ, egyszer le is foglalhatja, majd minden alkalommal kiválaszthatja azt az eszköz kontextusába, amikor szükség van rá. Mindenképpen törölje az ilyen objektumokat, ha már nincs rá szüksége.