Listen- und Kombinations-Felder

ListBox, ComboBox, Drag & Drop
Private Sub Form_Load()
   MannschaftenEinlesen lstMannschaften ListBox lädt Werte.
   MannschaftenEinlesen cboMannschaften ComboBox lädt Werte.
   StatusAnzeigen Subprogramm wird aufgerufen.
End Sub
Sub MannschaftenEinlesen(Element As Control)
   Element.AddItem "Bayern" Vorgegebene Werte werden in ListBox und ComboBox
   Element.AddItem "Stuttgart" eingefügt.
   Element.AddItem "Dortmund"
   Element.AddItem "Köln"
   Element.AddItem "Karlsruhe"
End Sub
Sub StatusAnzeigen()
   lblListCountCombo.Caption = cboMannschaften.ListCount Menge der Werte und Überschriften werden ausgegeben.
   lblListCountListe.Caption = lstMannschaften.ListCount
   lblListIndexCombo.Caption = cboMannschaften.ListIndex
   lblListIndexListe.Caption = lstMannschaften.ListIndex
End Sub
Private Sub cmdAddItem_Click()
Dim NeuerEintrag
   NeuerEintrag = InputBox("Geben Sie einen Namen ein:") Über eine InputBox wird ein neuer Eintrag in die ListBox
If NeuerEintrag = "" Then Exit Sub vorgenommen.
   lstMannschaften.AddItem NeuerEintrag
   StatusAnzeigen
End Sub
Private Sub cmdRemoveItem_Click()
Dim EintragIndex Über InputBox kann Eintrag der ListBox entfernt werden.
   EintragIndex = Val(InputBox("Geben Sie die Nummer des zu entfernenden Eintrags ein:"))
If EintragIndex < 0 Or EintragIndex > lstMannschaften.ListCount - 1 Then
   MsgBox Prompt:="Bitte einen Wert zwischen 0 und " & lstMannschaften.ListCount - 1 & " eingeben!",  _
    Buttons:=vbExclamation, Title:="Eingabefehler!"
Exit Sub
End If
   lstMannschaften.RemoveItem EintragIndex
   StatusAnzeigen
End Sub
Private Sub cmdNeuLaden_Click()
   lstMannschaften.Clear Die ListBox wird geleert und wieder neu geladen.
   MannschaftenEinlesen lstMannschaften
   StatusAnzeigen Neuer Status wird angezeigt.
End Sub
Private Sub cmdClear_Click()
   lstMannschaften.Clear Der Inhalt der ListBox wird komplett gelöscht.
End Sub
Private Sub cmdCboNeuLaden_Click()
   cboMannschaften.Clear Die ComboBox wird mit VorgabeWerten gefüllt.
   MannschaftenEinlesen cboMannschaften
   StatusAnzeigen
End Sub
Private Sub cmdHinzufügenCombo_Click()
   cboMannschaften.AddItem cboMannschaften.Text Ein Eintrag kann in die ComboBox hinzugefügt werden.
   StatusAnzeigen Ist das Eingabefeld leer, wird nur eine Leerzeile
End Sub eingefügt.
Private Sub cmdEntfernenCombo_Click()
If cboMannschaften.ListIndex = -1 Then
 MsgBox Prompt:="Es ist kein Eintrag selektiert!", Buttons:=vbExclamation
Exit Sub
End If
 cboMannschaften.RemoveItem cboMannschaften.ListIndex Entfernt einen Eintrag aus der ComboBox.
 StatusAnzeigen
End Sub
Private Sub lstDropListe_OLEDragDrop(Data As DataObject, Effect As Long, _
   Button%, Shift%, X As Single, Y As Single)
Dim tmpMannschaften, tmpMannschaft, CharPos
   lstDropListe.Clear Über Drag & Drop (mit linker oder rechter Maustaste) kann
   tmpMannschaften = Data.GetData(vbCFText) ein neuer Eintrag (oder auch mehrere) von der ListBox
Do in die DropListe eingefügt werden.
   CharPos = InStr(tmpMannschaften, vbCrLf) - 1 Der ursprüngliche Eintrag in der DropListe wird vorher
If CharPos <= 0 Then Exit Do gelöscht.
   tmpMannschaft = Left(tmpMannschaften, CharPos)
   lstDropListe.AddItem tmpMannschaft
   tmpMannschaften = Right(tmpMannschaften, Len(tmpMannschaften) - CharPos - 2)
Loop
   lstDropListe.AddItem tmpMannschaften
End Sub
Private Sub lstMannschaften_Click()
   StatusAnzeigen Bei Klick in die ListBox werden die Werte neu berechnet.
End Sub
Private Sub cboMannschaften_Click()
   lstEreignisse.AddItem "Click-Ereignis" Ausgabe einer Ereignismeldung ins Ereignisprotokoll.
   StatusAnzeigen
End Sub
Private Sub cboMannschaften_Change()
   lstEreignisse.AddItem "Change-Ereignis" Ausgabe einer Ereignismeldung ins Ereignisprotokoll.
End Sub
Private Sub cboMannschaften_DblClick()
   lstEreignisse.AddItem "DblClick-Ereignis" Ausgabe einer Ereignismeldung ins Ereignisprotokoll.
End Sub
Private Sub cboMannschaften_DropDown() Ausgabe einer Ereignismeldung ins Ereignisprotokoll.
   lstEreignisse.AddItem "DropDown-Ereignis" Drag & Drop-Ereignisse werden bei Style=1 der ComboBox
End Sub nicht ausgelöst.
Private Sub cboMannschaften_Scroll()
   lstEreignisse.AddItem "Scroll-Ereignis" Ausgabe einer Ereignismeldung ins Ereignisprotokoll.
End Sub
Per Drag & Drop können aus der linken oberen ListBox
Einträge in die linke untere ListBox gezogen werden.
In den Eigenschaften ist dazu folgende Einstellung
vorzunehmen:
OleDragMode = 1
Eine Mehrfachauswahl in der ListBox erreicht man mit:
MultiSelect = 1
Das Change-Ereignis in der ComboBox tritt nur auf,
wenn Einträge verändert werden (siehe Dortmun  ).
Private Sub lstEreignisse_Click()
   lstEreignisse.Clear Das Ereignisprotokoll wird gelöscht.
End Sub

 Ranking-Hits zurück Sitemap
Designed by www.wbrnet.info