Megosztás a következőn keresztül:


Ablakosztály makrói

Megjegyzés:

Az aktív sablontár (ATL) továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Ezek a makrók az ablakosztály segédprogramjait határozzák meg.

Név Description
DECLARE_WND_CLASS Lehetővé teszi egy új ablakosztály nevének megadását.
DECLARE_WND_CLASS2 (Visual Studio 2017) Lehetővé teszi egy új ablakosztály nevének megadását, valamint annak a befoglaló osztálynak a nevét, amelynek az ablakeljárását az új osztály használni fogja.
DECLARE_WND_SUPERCLASS Lehetővé teszi annak a meglévő ablakosztálynak a nevét, amelyen egy új ablakosztály lesz alapul.
DECLARE_WND_CLASS_EX Lehetővé teszi egy osztály paramétereinek megadását.

Requirements

Fejléc: atlwin.h

DECLARE_WND_CLASS

Lehetővé teszi egy új ablakosztály nevének megadását. Helyezze a makrót egy ATL ActiveX-vezérlő vezérlőosztályára.

DECLARE_WND_CLASS( WndClassName )

Paraméterek

WndClassName
[in] Az új ablakosztály neve. Null érték esetén az ATL létrehoz egy ablakosztálynevet.

Megjegyzések

Ha a /megengedő- fordító lehetőséget használja, akkor DECLARE_WND_CLASS fordítóhibát fog okozni; DECLARE_WND_CLASS2 helyett.

DECLARE_WND_CLASS lehetővé teszi egy új ablakosztály nevének megadását, amelynek adatait a CWndClassInfo kezeli. DECLARE_WND_CLASS az új ablakosztályt a következő statikus függvény implementálásával határozza meg:

static CWndClassInfo& GetWndClassInfo();

DECLARE_WND_CLASS az új ablak következő stílusait adja meg:

  • CS_HREDRAW

  • CS_VREDRAW

  • CS_DBLCLKS

DECLARE_WND_CLASS az alapértelmezett ablak háttérszínét is megadja. A DECLARE_WND_CLASS_EX makróval saját stílusokat és háttérszínt adhat meg.

A CWindowImpl a DECLARE_WND_CLASS makróval hoz létre egy ablakot egy új ablakosztály alapján. A viselkedés felülbírálásához használja a DECLARE_WND_SUPERCLASS makrót, vagy adja meg a GetWndClassInfo függvény saját implementációját.

A windows atl-ben való használatával kapcsolatos további információkért lásd az ATL ablakosztályok című cikket.

DECLARE_WND_CLASS2

(Visual Studio 2017) Hasonló a DECLARE_WND_CLASS, de egy extra paraméterrel, amely elkerüli a függő névhibát a /megengedő beállítás összeállításakor.

DECLARE_WND_CLASS2( WndClassName, EnclosingClass )

Paraméterek

WndClassName
[in] Az új ablakosztály neve. Null érték esetén az ATL létrehoz egy ablakosztálynevet.

EnclosingClass
[in] Az új ablakosztályt tartalmazó ablakosztály neve. Nem lehet NULL.

Megjegyzések

Ha a /megengedő beállítást használja, akkor DECLARE_WND_CLASS fordítási hibát fog okozni, mert függő nevet tartalmaz. DECLARE_WND_CLASS2 megköveteli, hogy explicit módon nevezze el a makró által használt osztályt, és nem okoz hibát a /missive - jelölő alatt. Ellenkező esetben ez a makró megegyezik a DECLARE_WND_CLASS.

DECLARE_WND_SUPERCLASS

Lehetővé teszi egy osztály paramétereinek megadását. Helyezze a makrót egy ATL ActiveX-vezérlő vezérlőosztályára.

DECLARE_WND_SUPERCLASS( WndClassName, OrigWndClassName )

Paraméterek

WndClassName
[in] Az OrigWndClassName osztályt felügyelő ablakosztály neve. Null érték esetén az ATL létrehoz egy ablakosztálynevet.

OrigWndClassName
[in] Egy meglévő ablakosztály neve.

Megjegyzések

Ez a makró lehetővé teszi annak az ablakosztálynak a nevét, amely felülsorol egy meglévő ablakosztályt. A CWndClassInfo kezeli a szuperosztály adatait.

DECLARE_WND_SUPERCLASS a következő statikus függvényt implementálja:

static CWndClassInfo& GetWndClassInfo();

Alapértelmezés szerint a CWindowImpl a DECLARE_WND_CLASS makróval hoz létre egy ablakot egy új ablakosztály alapján. Ha a DECLARE_WND_SUPERCLASS makrót egy CWindowImpl-származtatott osztályban adja meg, az ablakosztály egy meglévő osztályon alapul, de az ablak eljárást fogja használni. Ezt a technikát szuperosztályozásnak nevezzük.

A DECLARE_WND_CLASS és DECLARE_WND_SUPERCLASS makrók használata mellett a GetWndClassInfo függvényt saját implementációval is felülbírálhatja.

A windows atl-ben való használatával kapcsolatos további információkért lásd az ATL ablakosztályok című cikket.

DECLARE_WND_CLASS_EX

Lehetővé teszi annak a meglévő ablakosztálynak a nevét, amelyen egy új ablakosztály lesz alapul. Helyezze a makrót egy ATL ActiveX-vezérlő vezérlőosztályára.

DECLARE_WND_CLASS_EX( WndClassName, style, bkgnd )

Paraméterek

WndClassName
[in] Az új ablakosztály neve. Null érték esetén az ATL létrehoz egy ablakosztálynevet.

stílus
[in] Az ablak stílusa.

bkgnd
[in] Az ablak háttérszíne.

Megjegyzések

Ez a makró lehetővé teszi egy új ablakosztály osztályparamétereinek megadását, amelynek adatait a CWndClassInfo kezeli. DECLARE_WND_CLASS_EX az új ablakosztályt a következő statikus függvény implementálásával határozza meg:

static CWndClassInfo& GetWndClassInfo();

Ha az alapértelmezett stílusokat és háttérszínt szeretné használni, használja a DECLARE_WND_CLASS makrót. A windows atl-ben való használatával kapcsolatos további információkért lásd az ATL ablakosztályok című cikket.

Lásd még

Makrók