Informazioni sui tratti delle finestre

Le classi tratti finestra forniscono un metodo semplice per standardizzare gli stili usati per la creazione di un oggetto finestra ATL. I tratti di finestra vengono accettati come parametri modello da CWindowImpl e altre classi di finestre ATL come modo per fornire stili di finestra predefiniti a livello di classe.

Se l'autore di un'istanza della finestra non fornisce stili in modo esplicito nella chiamata a Crea, è possibile usare una classe traits per assicurarsi che la finestra venga comunque creata con gli stili corretti. È anche possibile assicurarsi che determinati stili siano impostati per tutte le istanze della classe finestra, consentendo l'impostazione di altri stili per ogni istanza.

Modelli di tratti della finestra ATL

ATL fornisce due modelli di tratti di finestra che consentono di impostare gli stili predefiniti in fase di compilazione usando i relativi parametri di modello.

Classe Descrizione
CWinTraits Usare questo modello quando si desidera specificare gli stili di finestra predefiniti che verranno usati solo quando non vengono specificati altri stili nella chiamata a Create. Gli stili forniti in fase di esecuzione hanno la precedenza sugli stili impostati in fase di compilazione.
CWinTraitsOR Utilizzare questa classe quando si desidera specificare gli stili che devono essere sempre impostati per la classe window. Gli stili forniti in fase di esecuzione vengono combinati con gli stili impostati in fase di compilazione usando l'operatore OR bit per bit.

Oltre a questi modelli, ATL fornisce una serie di specializzazioni predefinite del CWinTraits modello per combinazioni comunemente usate di stili di finestra. Per informazioni dettagliate, vedere la documentazione di riferimento di CWinTraits .

Tratti finestra personalizzati

Nella situazione improbabile che l'specializzazione di uno dei modelli forniti da ATL non sia sufficiente ed è necessario creare una classe di tratti personalizzata, è sufficiente creare una classe che implementa due funzioni statiche: GetWndStyle e GetWndStyleEx:

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

Ognuna di queste funzioni verrà passata a un valore di stile in fase di esecuzione che può essere usata per produrre un nuovo valore di stile. Se la classe dei tratti della finestra viene usata come argomento modello per una classe finestra ATL, i valori di stile passati a queste funzioni statiche saranno tutti gli argomenti di stile passati come argomenti di stile a Create.

Vedi anche

Classi di finestre