Partager via


Présentation des caractéristiques de fenêtre

Les classes de caractéristiques de fenêtre fournissent une méthode simple pour standardiser les styles utilisés pour la création d’un objet de fenêtre ATL. Les caractéristiques de fenêtre sont acceptées en tant que paramètres de modèle par CWindowImpl et d’autres classes de fenêtre ATL afin de fournir des styles de fenêtre par défaut au niveau de la classe.

Si le créateur d’une instance de fenêtre ne fournit pas explicitement de styles dans l’appel à Create, vous pouvez utiliser une classe de caractéristiques pour vous assurer que la fenêtre est toujours créée avec les styles appropriés. Vous pouvez même vous assurer que certains styles sont définis pour toutes les instances de cette classe de fenêtre tout en autorisant la définition d’autres styles au niveau de chaque instance.

Modèles de caractéristiques de la fenêtre ATL

ATL fournit deux modèles de caractéristiques de fenêtre qui vous permettent de définir des styles par défaut au moment de la compilation à l’aide de leurs paramètres de modèle.

Classe Descriptif
CWinTraits Utilisez ce modèle lorsque vous souhaitez fournir des styles de fenêtre par défaut qui ne seront utilisés que si aucun autre style n’est spécifié dans l’appel à Create. Les styles fournis au moment de l’exécution sont prioritaires sur les styles définis au moment de la compilation.
CWinTraitsOR Utilisez cette classe lorsque vous souhaitez spécifier des styles qui doivent toujours être définis pour la classe de fenêtre. Les styles fournis lors de l’exécution sont combinés avec les styles définis lors de la compilation à l’aide de l’opérateur de bits OU.

En plus de ces modèles, ATL fournit un certain nombre de spécialisations prédéfinies du modèle CWinTraits pour les combinaisons couramment utilisées de styles de fenêtre. Pour plus d’informations, consultez la documentation de référence de CWinTraits.

Caractéristiques de fenêtre personnalisées

Dans la situation peu probable où la spécialisation de l’un des modèles fournis par ATL n’est pas suffisante et que vous devez créer votre propre classe de caractéristiques, créez simplement une classe qui implémente deux fonctions statiques : GetWndStyle et GetWndStyleEx :

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

Chacune de ces fonctions recevra une valeur de style au moment de l’exécution, qu’elle pourra utiliser pour produire une nouvelle valeur de style. Si votre classe de caractéristiques de fenêtre est utilisée comme argument de modèle pour une classe de fenêtre ATL, les valeurs de style transmises à ces fonctions statiques seront celles qui ont été transmises comme arguments de style à Create.

Voir aussi

Classes de fenêtre