TVITEMA-Struktur (commctrl.h)

Gibt Attribute eines Strukturansichtselements an oder empfängt sie. Diese Struktur ist identisch mit der TV_ITEM-Struktur , wurde jedoch umbenannt, um den aktuellen Benennungskonventionen zu entsprechen. Neue Anwendungen sollten diese Struktur verwenden.

Syntax

typedef struct tagTVITEMA {
  UINT      mask;
  HTREEITEM hItem;
  UINT      state;
  UINT      stateMask;
  LPSTR     pszText;
  int       cchTextMax;
  int       iImage;
  int       iSelectedImage;
  int       cChildren;
  LPARAM    lParam;
} TVITEMA, *LPTVITEMA;

Member

mask

Typ: UINT

Array von Flags, die angeben, welche der anderen Strukturmember gültige Daten enthalten. Wenn diese Struktur mit der TVM_GETITEM-Nachricht verwendet wird, gibt das Maskenelement die abzurufenden Elementattribute an. Bei Verwendung mit der TVM_SETITEM Nachricht 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 angegebenen Informationen bei und fordert sie nicht erneut an. Dieses Flag ist nur gültig, wenn die TVN_GETDISPINFO Benachrichtigung verarbeitet wird.
TVIF_HANDLE
Das hItem-Element ist gültig.
TVIF_IMAGE
Das iImage-Element ist gültig.
TVIF_PARAM
Das lParam-Element ist gültig.
TVIF_SELECTEDIMAGE
Das iSelectedImage-Element ist gültig.
TVIF_STATE
Die State- und stateMask-Member sind gültig.
TVIF_TEXT
Die Member pszText und cchTextMax sind gültig.

hItem

Typ: HTREEITEM

Handle mit dem Element.

state

Typ: UINT

Eine Reihe von Bitflags und Bildlistenindizes, die den Status des Elements angeben. Wenn Sie den Status eines Elements festlegen, gibt das stateMask-Element die gültigen Bits dieses Elements an. Beim Abrufen des Zustands eines Elements gibt dieser Member den aktuellen Zustand für die im stateMask-Element angegebenen Bits zurück.

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

 

Das Überlagerungsbild wird dem Symbolbild des Elements überlagert. Die Bits 8 bis 11 dieses Members geben den 1-basierten Überlagerungsbildindex an. Wenn diese Bits 0 sind, hat das Element kein Überlagerungsbild. Um diese Bits zu isolieren, verwenden Sie die TVIS_OVERLAYMASK-Maske . Um den Überlagerungsbildindex in diesem Member festzulegen, verwenden Sie das Makro INDEXTOOVERLAYMASK . Die Überlagerungsbilder der Bildliste werden mit der ImageList_SetOverlayImage-Funktion festgelegt.

 

Ein Zustandsbild wird neben dem Symbol eines Elements angezeigt, um einen anwendungsdefinierten Zustand anzuzeigen. Geben Sie die Statusbildliste an, indem Sie eine TVM_SETIMAGELIST Nachricht senden. Um das Zustandsbild eines Elements festzulegen, fügen Sie den wert TVIS_STATEIMAGEMASK in das stateMask-Element der TVITEM-Struktur ein. Die Bits 12 bis 15 des Zustandselements der Struktur geben den Index in der Zustandsbildliste des zu zeichnenden Bilds an.

 

Um den Statusbildindex festzulegen, verwenden Sie INDEXTOSTATEIMAGEMASK. Dieses Makro nimmt einen Index an und legt die Bits 12 bis 15 entsprechend fest. Um anzugeben, dass das Element über kein Zustandsbild verfügt, legen Sie den Index auf Null fest. Diese Konvention bedeutet, dass image zero in der Statusimageliste nicht als Zustandsabbild verwendet werden kann. Um bits 12 bis 15 des Zustandsmitglieds zu isolieren, verwenden Sie die TVIS_STATEIMAGEMASK-Maske.

stateMask

Typ: UINT

Bits des Statusmitglieds , die gültig sind. Wenn Sie den Status eines Elements abrufen, legen Sie die Bits des stateMask-Members fest, um die bits anzugeben, die im Staatselement zurückgegeben werden sollen. Wenn Sie den Status eines Elements festlegen, legen Sie die Bits des stateMask-Members fest, um die Bits des zu festlegenden Staatsmitglieds anzugeben. Um den Überlagerungsbildindex eines Elements festzulegen oder abzurufen, legen Sie die TVIS_OVERLAYMASK Bits fest. Um den Zustandsbildindex eines Elements festzulegen oder abzurufen, legen Sie die TVIS_STATEIMAGEMASK Bits fest.

pszText

Typ: LPTSTR

Zeiger auf eine NULL-Zeichenfolge, die den Elementtext enthält, wenn die Struktur Elementattribute angibt. Wenn es sich bei diesem Element um den LPSTR_TEXTCALLBACK Wert handelt, ist das übergeordnete Fenster für das Speichern 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 benötigt, und einen TVN_SETDISPINFO Benachrichtigungscode, 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 das pszText-Element verweist, in Zeichen. Wenn diese Struktur zum Festlegen von Elementattributen verwendet wird, wird dieser Member ignoriert.

iImage

Typ: int

Indexieren Sie in der Bildliste des Strukturansichtssteuerelements das Symbolbild, das verwendet werden soll, wenn sich das Element im nicht ausgewählten Zustand befindet. Wenn es sich bei diesem Member um den I_IMAGECALLBACK Wert handelt, ist das übergeordnete Fenster für das Speichern des Indexes verantwortlich. In diesem Fall sendet das Strukturansichtssteuerelement dem übergeordneten Element einen TVN_GETDISPINFO Benachrichtigungscode, um den Index abzurufen, wenn das Bild angezeigt werden muss.

iSelectedImage

Typ: int

Indexieren Sie in der Bildliste des Baumansicht-Steuerelements das Symbolbild, das verwendet werden soll, wenn sich das Element im ausgewählten Zustand befindet. Wenn es sich bei diesem Member um den I_IMAGECALLBACK Wert handelt, ist das übergeordnete Fenster für das Speichern des Indexes verantwortlich. In diesem Fall sendet das Strukturansichtssteuerelement 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 mindestens ein untergeordnetes Element.
I_CHILDRENCALLBACK
Das übergeordnete Fenster verfolgt, ob das Element untergeordnete Elemente enthält. In diesem Fall sendet das Steuerelement dem übergeordneten Element einen TVN_GETDISPINFO Benachrichtigungscode, um zu bestimmen, ob das Element über untergeordnete Elemente verfügt.

Wenn das Strukturansicht-Steuerelement über die TVS_HASBUTTONS-Formatvorlage verfügt, wird dieses Element verwendet, um zu bestimmen, ob die Schaltfläche angezeigt werden soll, die das Vorhandensein untergeordneter Elemente anzeigt. Sie können dieses Element verwenden, um zu erzwingen, dass das Steuerelement die Schaltfläche anzeigt, obwohl für das 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 den internen Gebrauch 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.

Hinweise

Hinweis

Der commctrl.h-Header definiert TVITEM 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 nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

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