Freigeben über


LB_ADDSTRING Nachricht

Fügt einem Listenfeld eine Zeichenfolge hinzu. Wenn das Listenfeld nicht über das format LBS_SORT verfügt, wird die Zeichenfolge am Ende der Liste hinzugefügt. Andernfalls wird die Zeichenfolge in die Liste eingefügt und die Liste sortiert.

Parameter

wParam

Dieser Parameter wird nicht verwendet.

lParam

Ein Zeiger auf die NULL-Zeichenfolge, die hinzugefügt werden soll.

Wenn das Listenfeld eine vom Besitzer gezeichnete Formatvorlage, aber nicht die LBS_HASSTRINGS hat, wird dieser Parameter als Elementdaten anstelle einer Zeichenfolge gespeichert. Sie können die LB_GETITEMDATA und LB_SETITEMDATA Nachrichten senden, um die Elementdaten abzurufen oder zu ändern.

Rückgabewert

Der Rückgabewert ist der nullbasierte Index der Zeichenfolge im Listenfeld. Wenn ein Fehler auftritt, wird der Rückgabewert LB_ERR. Wenn nicht genügend Speicherplatz zum Speichern der neuen Zeichenfolge vorhanden ist, wird der Rückgabewert LB_ERRSPACE.

Bemerkungen

Wenn das Listenfeld eine vom Besitzer gezeichnete Formatvorlage und die LBS_SORT Formatvorlage, aber nicht die LBS_HASSTRINGS , sendet das System die WM_COMPAREITEM Nachricht mehrmals an den Besitzer des Listenfelds, um das neue Element ordnungsgemäß im Listenfeld zu platzieren.

Die LB_INITSTORAGE Nachricht trägt dazu bei, die Initialisierung von Listenfeldern zu beschleunigen, die eine große Anzahl von Elementen (mehr als 100) aufweisen. Es reserviert die angegebene Menge an Arbeitsspeicher, sodass nachfolgende LB_ADDSTRING Nachrichten so schnell wie möglich in Anspruch nehmen. Sie können Schätzungen für die Parameter wParam und lParam verwenden. Wenn Sie überschätzen, wird der zusätzliche Arbeitsspeicher zugewiesen. wenn Sie unterschätzen, wird die normale Zuordnung für Elemente verwendet, die den angeforderten Betrag überschreiten.

Wenn das Listenfeld das WS_HSCROLL Format aufweist und Sie eine Zeichenfolge breiter als das Listenfeld hinzufügen, senden Sie eine LB_SETHORIZONTALEXTENT Nachricht, um sicherzustellen, dass die horizontale Bildlaufleiste angezeigt wird.

Bei einer ANSI-Anwendung konvertiert das System den Text in einem Listenfeld mithilfe von CP_ACP in Unicode. Dies kann zu Problemen führen. Beispielsweise werden römische Zeichen mit Akzenten in einem Nicht-Unicode-Listenfeld in japanischen Windows verworren. Um dies zu beheben, kompilieren Sie entweder die Anwendung als Unicode, oder verwenden Sie ein vom Besitzer gezeichnetes Listenfeld.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2003 [nur Desktop-Apps]
Header
Winuser.h (einschließlich Windows.h)

Weitere Informationen

Referenz

LB_DELETESTRING

LB_INSERTSTRING

LB_SELECTSTRING

LB_SETHORIZONTALEXTENT

WM_COMPAREITEM