TVITEMEXA-Struktur (commctrl.h)

Gibt Attribute eines Strukturansichtselements an oder empfängt diese. Diese Struktur ist eine Erweiterung der TVITEM-Struktur . Neue Anwendungen sollten diese Struktur bei Bedarf verwenden.

Syntax

typedef struct tagTVITEMEXA {
  UINT      mask;
  HTREEITEM hItem;
  UINT      state;
  UINT      stateMask;
  LPSTR     pszText;
  int       cchTextMax;
  int       iImage;
  int       iSelectedImage;
  int       cChildren;
  LPARAM    lParam;
  int       iIntegral;
  UINT      uStateEx;
  HWND      hwnd;
  int       iExpandedImage;
  int       iReserved;
} TVITEMEXA, *LPTVITEMEXA;

Member

mask

Typ: UINT

Array von Flags, die angeben, welche der anderen Strukturmember gültige Daten enthalten. Wenn diese Struktur mit der TVM_GETITEM Meldung verwendet wird, gibt das Maskenelement die abzurufenden Elementattribute an. Bei Verwendung mit der TVM_SETITEM Meldung gibt die Maske die festzulegenden Attribute an. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln:

Wert Bedeutung
TVIF_CHILDREN
Das cChildren-Element ist gültig.
TVIF_DI_SETITEM
Das Strukturansichtssteuerelement behält die bereitgestellten Informationen bei und fordert sie nicht erneut an. Dieses Flag ist nur gültig, wenn die TVN_GETDISPINFO Benachrichtigung verarbeitet wird.
TVIF_EXPANDEDIMAGE

Version 6.00 und Windows Vista. Das iExpandedImage-Element ist gültig.

TVIF_HANDLE
Das hItem-Element ist gültig.
TVIF_IMAGE
Das iImage-Element ist gültig.
TVIF_INTEGRAL
Das iIntegral-Element ist gültig.
TVIF_PARAM
Das lParam-Element ist gültig.
TVIF_SELECTEDIMAGE
Das iSelectedImage-Element ist gültig.
TVIF_STATE
Die Member state und stateMask sind gültig.
TVIF_STATEEX

Version 6.00 und Windows Vista. Das uStateEx-Element ist gültig.

TVIF_TEXT
Die Elemente pszText und cchTextMax sind gültig.

hItem

Typ: HTREEITEM

Handle für das Element.

state

Typ: UINT

Eine Reihe von Bitflags und Bildlistenindizes, die den Status des Elements angeben. Beim Festlegen des Zustands eines Elements gibt der stateMask-Member die gültigen Bits dieses Elements an. Beim Abrufen des Zustands eines Elements gibt dieses Element den aktuellen Zustand für die bits zurück, die im stateMask-Element angegeben sind. Weitere Informationen zu diesem Member finden Sie im Abschnitt "Hinweise".

Die Bits 0 bis 7 dieses Members enthalten die Elementstatusflags. Eine Liste der möglichen Elementstatusflags finden Sie unter Strukturansicht-Steuerelementelementstatus.

Die Bits 8 bis 11 dieses Members geben den index für einbasiertes Überlagerungsbild an. Das Überlagerungsbild wird über dem Symbolbild des Elements angeordnet. Wenn diese Bits null sind, verfügt das Element über kein Überlagerungsbild. Um diese Bits zu isolieren, verwenden Sie die TVIS_OVERLAYMASK-Maske . Verwenden Sie das Makro INDEXTOOVERLAYMASK , um den Überlagerungsbildindex in diesem Member festzulegen. Die Überlagerungsbilder der Bildliste werden mit der funktion ImageList_SetOverlayImage festgelegt.

Ein Zustandsbild wird neben dem Symbol eines Elements angezeigt, um einen anwendungsdefinierten Zustand anzugeben. Geben Sie die Statusbildliste an, indem Sie eine TVM_SETIMAGELIST Nachricht senden. Um das Zustandsbild eines Elements festzulegen, schließen Sie den TVIS_STATEIMAGEMASK-Wert in the stateMask member der TVITEM-Struktur ein. Die Bits 12 bis 15 des Zustandselements der Struktur geben den Index in der Statusbildliste des zu zeichnenden Bilds an.

Verwenden Sie INDEXTOSTATEIMAGEMASK, um den Statusbildindex festzulegen. Dieses Makro nimmt einen Index an und legt die Bits 12 bis 15 entsprechend fest. Um anzugeben, dass das Element kein Zustandsbild aufweist, legen Sie den Index auf 0 (null) fest. Diese Konvention bedeutet, dass image zero in der Statusimageliste nicht als Zustandsbild verwendet werden kann. Verwenden Sie die TVIS_STATEIMAGEMASK maske, um die Bits 12 bis 15 des Zustandselements zu isolieren.

stateMask

Typ: UINT

Bits des gültigen Landesmitglieds . Wenn Sie den Zustand eines Elements abrufen, legen Sie die Bits des stateMask-Elements fest, um die bits anzugeben, die im State-Member zurückgegeben werden sollen. Wenn Sie den Status eines Elements festlegen, legen Sie die Bits des stateMask-Elements fest, um die Bits des festzulegenden Zustandsmitglieds anzugeben. Um den Überlagerungsbildindex eines Elements festzulegen oder abzurufen, legen Sie die TVIS_OVERLAYMASK Bits fest. Um den Statusbildindex eines Elements festzulegen oder abzurufen, legen Sie die TVIS_STATEIMAGEMASK Bits fest.

pszText

Typ: LPTSTR

Zeiger auf eine NULL-endende Zeichenfolge, die den Elementtext enthält, wenn die Struktur Elementattribute angibt. Wenn dieser Member der LPSTR_TEXTCALLBACK Wert ist, ist das übergeordnete Fenster für die Speicherung des Namens verantwortlich. In diesem Fall sendet das Strukturansichtssteuerelement dem übergeordneten Fenster einen TVN_GETDISPINFO Benachrichtigungscode, wenn es den Elementtext zum Anzeigen, Sortieren oder Bearbeiten und einen TVN_SETDISPINFO Benachrichtigungscode benötigt, wenn sich der Elementtext ändert. Wenn die Struktur Elementattribute empfängt, ist dieses Element die Adresse des Puffers, der den Elementtext empfängt. Beachten Sie, dass mit dem Strukturansichtssteuerelement zwar beliebige Längenzeichenfolgen als Elementtext gespeichert werden können, aber nur die ersten 260 Zeichen angezeigt werden.

cchTextMax

Typ: int

Größe des Puffers, auf den der pszText-Member in Zeichen verweist. Wenn diese Struktur zum Festlegen von Elementattributen verwendet wird, wird dieser Member ignoriert.

iImage

Typ: int

Index in der Bildliste des Strukturansichtssteuerelements des Symbolbilds, das verwendet werden soll, wenn sich das Element im nicht ausgewählten Zustand befindet. Wenn dieser Member der I_IMAGECALLBACK Wert ist, ist das übergeordnete Fenster für die Speicherung des Indexes zuständig. In diesem Fall sendet das Strukturansicht-Steuerelement dem übergeordneten Element einen TVN_GETDISPINFO Benachrichtigungscode, um den Index abzurufen, wenn das Bild angezeigt werden muss.

iSelectedImage

Typ: int

Index in der Bildliste des Strukturansichtssteuerelements des Symbolbilds, das verwendet werden soll, wenn sich das Element im ausgewählten Zustand befindet. Wenn dieser Member der I_IMAGECALLBACK Wert ist, ist das übergeordnete Fenster für die Speicherung des Indexes zuständig. In diesem Fall sendet das Strukturansicht-Steuerelement dem übergeordneten Element einen TVN_GETDISPINFO Benachrichtigungscode, um den Index abzurufen, wenn das Bild angezeigt werden muss.

cChildren

Typ: int

Flag, das angibt, ob dem Element untergeordnete Elemente zugeordnet sind. Dieser Member kann einer der folgenden Werte sein:

Wert Bedeutung
null
Das Element enthält keine untergeordneten Elemente.
Eine
Das Element verfügt über ein oder mehrere untergeordnete Elemente.
I_CHILDRENCALLBACK
Im übergeordneten Fenster wird nachverfolgt, ob das Element über untergeordnete Elemente verfügt. Wenn das Strukturansichtssteuerelement das Element anzeigen muss, sendet das Steuerelement dem übergeordneten Element einen TVN_GETDISPINFO Benachrichtigungscode, um zu bestimmen, ob das Element untergeordnete Elemente enthält. Wenn das Strukturansichtssteuerelement über das TVS_HASBUTTONS-Format verfügt, wird mit diesem Member bestimmt, ob die Schaltfläche angezeigt werden soll, die das Vorhandensein untergeordneter Elemente angibt. Sie können dieses Element verwenden, um zu erzwingen, dass das Steuerelement die Schaltfläche anzeigt, obwohl im Element keine untergeordneten Elemente eingefügt wurden. Dadurch können Sie die Schaltfläche anzeigen und gleichzeitig die Speicherauslastung des Steuerelements minimieren, indem Sie untergeordnete Elemente nur einfügen, wenn das Element sichtbar oder erweitert ist.
I_CHILDRENAUTO

Version 6.0für die interne Verwendung vorgesehen; nicht für die Verwendung in Anwendungen empfohlen. Das Strukturansichtssteuerelement bestimmt automatisch, ob das Element untergeordnete Elemente enthält.

Hinweis Dieses Flag wird in zukünftigen Versionen von Comctl32.dll möglicherweise nicht unterstützt. Außerdem ist dieses Flag nicht in commctrl.h definiert. Fügen Sie den Quelldateien Ihrer Anwendung die folgende Definition hinzu, um das Flag zu verwenden:
#define I_CHILDRENAUTO (-2)
 

lParam

Typ: LPARAM

Ein Wert, der dem Element zugeordnet werden soll.

iIntegral

Typ: int

Höhe des Elements in Vielfachen der Standardelementhöhe (siehe TVM_SETITEMHEIGHT). Wenn Sie diesen Member z. B. auf 2 festlegen, erhält das Element die doppelte Standardhöhe. Das Strukturansicht-Steuerelement zeichnet nicht den zusätzlichen Bereich, der unterhalb des Elementinhalts angezeigt wird, aber dieser Bereich kann von der Anwendung zum Zeichnen verwendet werden, wenn benutzerdefiniertes Zeichnen verwendet wird. Anwendungen, die keine benutzerdefinierte Zeichnung verwenden, sollten diesen Wert auf 1 festlegen, da andernfalls das Verhalten nicht definiert ist.

uStateEx

Typ: UINT

Internet Explorer 6 und höher. Ein oder mehrere (als bitweise Kombination) der folgenden erweiterten Zustände.

Wert Bedeutung
TVIS_EX_DISABLED
Windows Vista und höher. Erstellt ein Grau gezeichnetes Steuerelement, mit dem der Benutzer nicht interagieren kann.
TVIS_EX_FLAT
Erstellt ein flaches Element– das Element ist virtuell und in der Struktur nicht sichtbar. stattdessen nehmen die untergeordneten Elemente ihren Platz in der Strukturhierarchie ein. Dieser Zustand ist nur gültig, wenn dem Strukturansichtssteuerelement ein Element hinzugefügt wird.
TVIS_EX_HWND
Erstellt einen separaten HWND für das Element. Dieser Zustand ist nur gültig, wenn dem Strukturansichtssteuerelement ein Element hinzugefügt wird.

hwnd

Typ: HWND

Internet Explorer 6 und höher. Nicht verwendet; muss NULL sein.

iExpandedImage

Typ: int

Internet Explorer 6 und höher. Index des Bilds in der Bildliste des Steuerelements, das angezeigt werden soll, wenn sich das Element im erweiterten Zustand befindet.

iReserved

Typ: int

Reserviertes Mitglied. Darf nicht verwendet werden.

Hinweise

Hinweis

Der Commctrl.h-Header definiert TVITEMEX als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Kopfzeile commctrl.h

Weitere Informationen

Hinzufügen von Tree-View Elementen