ListBoxMessageEnum: Unterschied zwischen den Versionen

Aus API-Wiki
Wechseln zu: Navigation, Suche
(LB_GETCOUNT)
(Beschreibung)
Zeile 58: Zeile 58:
  
 
= Beschreibung =
 
= Beschreibung =
 +
 +
==== LB_ADDSTRING ====
 +
Wert (hex/dez): &H180 = 384
 +
 +
Mit dieser Nachricht wird ein neues Element in die Liste eingefügt. Das neue Element wird an das Ende der Liste gestellt.<BR>
 +
wParam wird nicht benötigt und muß den Wert 0 haben. lParam ist ein Zeiger auf das einzufügende Element, welches mit einem [[vbNullChar|Nullbyte]] abgeschlossen werden muß.
 +
 +
Ist der Aufruf erfolgreich, wird der Index des hinzugefügten Elementes zurückgegeben. Trat ein Fehler auf, wird [[ListBoxResultEnum|LB_ERR]] zurückgegeben, der Fehler kann dann mit [[GetLastError|Err.LastDLLError]] abgefragt werden. Falls die ListBox nicht mehr genügend Speicher hat, wird [[ListBoxResultEnum|LB_ERRSPACE]] zurückgegeben.
 +
 +
===== Beispiel =====
 +
<PRE>
 +
Dim lngResult As Long
 +
Dim strText As String
 +
 +
lngResult = SendMessageLong(Me.List1.hWnd, _
 +
                ListBoxMessageEnum.LB_GETCOUNT, _
 +
                0, ByVal 0&)
 +
 +
strText = "Eintrag " & CStr(lngResult + 1)
 +
 +
lngResult = SendMessageString(Me.List1.hWnd, _
 +
                ListBoxMessageEnum.LB_ADDSTRING, _
 +
                0, strText)
 +
</PRE>
 +
 +
 +
 
==== LB_RESETCONTENT ====
 
==== LB_RESETCONTENT ====
 
Wert (hex/dez): &H184 = 388
 
Wert (hex/dez): &H184 = 388

Version vom 13. April 2007, 18:00 Uhr

Die Mitglieder der Enumeration ListBoxMessageEnum sind Nachrichten, die an Listenfelder gesandt werden, um das Verhalten zu steuern und Daten zu setzen oder zu ermitteln.


Deklaration

Const LB_BASE As Long = &H180

Enum ListBoxMessageEnum
    LB_ADDSTRING = LB_BASE + &H0
    LB_INSERTSTRING = LB_BASE + &H1
    LB_DELETESTRING = LB_BASE + &H2
    LB_SELITEMRANGEEX = LB_BASE + &H3
    LB_RESETCONTENT = LB_BASE + &H4
    LB_SETSEL = LB_BASE + &H5
    LB_SETCURSEL = LB_BASE + &H6
    LB_GETSEL = LB_BASE + &H7
    LB_GETCURSEL = LB_BASE + &H8
    LB_GETTEXT = LB_BASE + &H9
    LB_GETTEXTLEN = LB_BASE + &HA
    LB_GETCOUNT = LB_BASE + &HB
    LB_SELECTSTRING = LB_BASE + &HC
    LB_DIR = LB_BASE + &HD
    LB_GETTOPINDEX = LB_BASE + &HE
    LB_FINDSTRING = LB_BASE + &HF
    LB_GETSELCOUNT = LB_BASE + &H10
    LB_GETSELITEMS = LB_BASE + &H11
    LB_SETTABSTOPS = LB_BASE + &H12
    LB_GETHORIZONTALEXTENT = LB_BASE + &H13
    LB_SETHORIZONTALEXTENT = LB_BASE + &H14
    LB_SETCOLUMNWIDTH = LB_BASE + &H15
    LB_ADDFILE = LB_BASE + &H16
    LB_SETTOPINDEX = LB_BASE + &H17
    LB_GETITEMRECT = LB_BASE + &H18
    LB_GETITEMDATA = LB_BASE + &H19
    LB_SETITEMDATA = LB_BASE + &H1A
    LB_SELITEMRANGE = LB_BASE + &H1B
    LB_SETANCHORINDEX = LB_BASE + &H1C
    LB_GETANCHORINDEX = LB_BASE + &H1D
    LB_SETCARETINDEX = LB_BASE + &H1E
    LB_GETCARETINDEX = LB_BASE + &H1F
    LB_SETITEMHEIGHT = LB_BASE + &H20
    LB_GETITEMHEIGHT = LB_BASE + &H21
    LB_FINDSTRINGEXACT = LB_BASE + &H22&
    LB_SETLOCALE = LB_BASE + &H25
    LB_GETLOCALE = LB_BASE + &H26
    LB_SETCOUNT = LB_BASE + &H27
    LB_INITSTORAGE = LB_BASE + &H28
    LB_ITEMFROMPOINT = LB_BASE + &H29
    LB_MSGMAX = LB_BASE + &H30
End Enum

Die Nachrichten können mit SendMessage oder PostMessage versandt werden.


Beschreibung

LB_ADDSTRING

Wert (hex/dez): &H180 = 384

Mit dieser Nachricht wird ein neues Element in die Liste eingefügt. Das neue Element wird an das Ende der Liste gestellt.
wParam wird nicht benötigt und muß den Wert 0 haben. lParam ist ein Zeiger auf das einzufügende Element, welches mit einem Nullbyte abgeschlossen werden muß.

Ist der Aufruf erfolgreich, wird der Index des hinzugefügten Elementes zurückgegeben. Trat ein Fehler auf, wird LB_ERR zurückgegeben, der Fehler kann dann mit Err.LastDLLError abgefragt werden. Falls die ListBox nicht mehr genügend Speicher hat, wird LB_ERRSPACE zurückgegeben.

Beispiel
Dim lngResult As Long
Dim strText As String

lngResult = SendMessageLong(Me.List1.hWnd, _
                ListBoxMessageEnum.LB_GETCOUNT, _
                0, ByVal 0&)

strText = "Eintrag " & CStr(lngResult + 1)

lngResult = SendMessageString(Me.List1.hWnd, _
                ListBoxMessageEnum.LB_ADDSTRING, _
                0, strText)


LB_RESETCONTENT

Wert (hex/dez): &H184 = 388

Entfernt alle Elemente aus der Liste der Listbox.
wParam und lParam werden nicht benötigt und müssen den Wert 0 haben.

Hat die Combobox den Stil LBS_HASSTRINGS, empfängt der Eigentümer der Combobox für jedes Element die Nachricht WM_DELETEITEM.

Beispiel
Call SendMessageLong(Me.List1.hWnd, _
                ListBoxMessageEnum.LB_RESETCONTENT, 0, _
                ByVal &H0)


LB_GETCOUNT

Wert (hex/dez): &H18B = 395

Um die Anzahl der Einträge in einer ListBox zu ermitteln, wird diese Nachricht an die ListBox gesandt.
wParam und lParam werden nicht benötigt und müssen den Wert 0 haben.

Zurückgegeben wird die Anzahl der enthaltenen Einträge. Falls ein Fehler aufgetreten ist, wird stattdessen LB_ERR zurückgegeben, der Fehler kann dann mit Err.LastDLLError abgefragt werden.

Beispiel
Debug.Print SendMessageLong(Me.List1.hWnd, _
                ListBoxMessageEnum.LB_GETCOUNT, 0, _
                ByVal &H0)

Beispiele

Weblinks


Benutzer:Bernhard Döbler/Vorlage:Zuständig