Freigeben über


Understanding Window Traits

Fenstermerkmalklassen stellen eine einfache Methode für die Normung der Formate bereit, die für die Erstellung eines ATL-Fensterobjekts verwendet werden. Fenstermerkmale werden als Vorlagenparameter durch CWindowImpl und andere ATL-Fensterklassen als Methode zum Bereitstellen von standardmäßigen Fensterstilen auf Klassenebene akzeptiert.

Wenn der Ersteller einer Fensterinstanz Explizites im Aufruf von nicht Erstellen Sie bereitstellt, können Sie eine Merkmalklasse verwenden, um sicherzustellen, dass das Fenster weiterhin mit den richtigen Formaten erstellt wird. Sie können sogar sicherstellen, dass bestimmte Formate für alle Instanzen dieser Fensterklasse beim Ermöglichen anderer Formate, pro Instanz festgelegt werden festgelegt werden.

ATL-Fenster-Merkmals-Vorlagen

ATL stellt zwei Fenstermerkmalsvorlagen, die Sie an den festgelegten Standardstilen zur Kompilierzeit mithilfe ihrer Vorlagenparameter ermöglichen.

Klasse

Description

CWinTraits

Verwenden Sie diese Vorlage, wenn Sie standardmäßige Fensterstile bereitstellen möchten, die nur verwendet werden, wenn keine anderen Formate im Aufruf von Create angegeben werden. Die Formate haben zur Laufzeit haben Vorrang vor den Formaten bereit, die zur Kompilierzeit festgelegt wurden.

CWinTraitsOR

Verwenden Sie diese Klasse, wenn Sie Stile angeben möchten, die für die Fensterklasse immer festgelegt werden müssen. Die Formate haben zur Laufzeit kombiniert werden mit den Formaten bereit, die zur Kompilierzeit mithilfe des bitweisen OR-Operators festgelegt wurden.

Zusätzlich zu diesen Vorlagen ATL stellt einige vordefinierte Spezialisierungen der CWinTraits Vorlage für häufig verwendete Kombinationen von Fensterstilen bereit. Siehe die CWinTraits-Referenzdokumentation für vollständige Details.

Benutzerdefinierte Fenster-Merkmale

In der unwahrscheinlichen Fall, die, eine der Vorlagen zu spezialisieren, die von ATL bereitgestellt werden, nicht ausreichend ist und Sie eine eigene Merkmalklasse erstellen müssen, müssen Sie eine Klasse erstellen, die zwei statische Funktionen implementiert: GetWndStyle und GetWndStyleEx:

static DWORD GetWndStyle(DWORD dwStyle);
static DWORD GetWndExStyle(DWORD dwExStyle);

Jede dieser Funktionen wird leicht Formatwert zur Laufzeit übergeben, den es verwenden kann, um einen neuen Formatwert zu erzeugen. Wenn die Fenstermerkmalklasse als Vorlagenargument zu einer ATL-Fensterklasse verwendet wird, haben die Formatwerte zu diesen statischen Funktionen sind, was als die Formatargumente zu Erstellen Sie übergeben wurde.

Siehe auch

Weitere Ressourcen

ATL-Fensterklassen