ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
623
623
EMPFEHLEN
-
Hallo,
ich habe ein Problem, bzw. eine Frage. Also:
Ich habe eine ListBox. In der steht zum Beispiel:
Alfons
Alois
Berta
Brigitte
Donald
Daniel
Sie sind alle schon alphabetisch geordnet. Kann ich es ihrgentwie schaffen, nach jedem Namen, der mit einem neuen Anfangsbuchstaben beginnt, einen Strich zu ziehn, oder dass sie eine andre Farbe haben. Es soll auf jeden Fall ihrgentwie sichtilich gemacht werden, dass ein Neuer Name mit einem NEUEN ANFANGSBUCHSTABEN angefangen hat. Bitte um Antworten.
LuCKEr
-
Das kannst du ganz einfach so machen (in meinem Beispiel heißt die ListBox List1):
Die Einträge der ListBox werden nacheinander durchgegangen und wenn ein neuer Anfangsbuchstabe vorliegt, dann wird der Index des ListBox-Eintrags in einem Array gespeichert. Anschließend wird das Array ausgelesen und nach jedem im Array gespeicherten Index wird in der ListBox eine Zeile mit Strichen eingefügt.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
Private Sub Trennen() Dim strAnfang As String Dim intZähler As Integer Dim StrVorher As String Dim strStrichIndex As String Dim intStriche() As Integer StrVorher = Mid$(List1.List(intZähler), 1, 1) [COLOR=Green] '-----------------------------------------------[/COLOR] For intZähler = 0 To List1.ListCount - 1 strAnfang = Mid$(List1.List(intZähler), 1, 1) If strAnfang <> StrVorher Then [COLOR=Green] '-->Neuer Strich hier erforderlich, Index merken:[/COLOR] ArrayErweitern intStriche intStriche(UBound(intStriche)) = intZähler End If StrVorher = strAnfang Next [COLOR=Green] '-----------------------------------------------[/COLOR] If Not ArrayIstInitialisiert(intStriche) Then Exit Sub For intZähler = 1 To UBound(intStriche) List1.AddItem "-------", intZähler + intStriche(intZähler) - 1 Next End Sub Private Sub ArrayErweitern(ByRef MeinArray As Variant) [COLOR=Green]'SUB: erweitert ein Array um einen Eintrag.[/COLOR] If ArrayIstInitialisiert(MeinArray) Then ReDim Preserve MeinArray(1 To UBound(MeinArray) + 1) Else ReDim MeinArray(1 To 1) End If End Sub Private Function ArrayIstInitialisiert(ByRef MeinArray As Variant) [COLOR=DarkGreen]'FUNCTION: Prüft, ob ein Array initialisiert ist.[/COLOR] On Error Resume Next ArrayIstInitialisiert = (UBound(MeinArray) = LBound(MeinArray)) ArrayIstInitialisiert = (Err.Number = 0) End Function
Geändert von Shakie (20.11.04 um 18:44 Uhr)
hihi = -h²
Ähnliche Themen
-
listbox
Von Schiffscomputer im Forum .NET Windows FormsAntworten: 3Letzter Beitrag: 22.11.06, 18:40 -
ListBox BCB
Von Tappan im Forum C/C++Antworten: 3Letzter Beitrag: 20.09.05, 01:09 -
xml in listbox?
Von MeikeBehrens im Forum .NET ArchivAntworten: 5Letzter Beitrag: 15.09.04, 11:36 -
Listbox.
Von Yugi-Radiodome im Forum Visual Basic 6.0Antworten: 1Letzter Beitrag: 21.07.04, 15:24 -
listbox
Von zorc68 im Forum Flash PlattformAntworten: 2Letzter Beitrag: 19.08.02, 23:16





Zitieren
Login





