18. april 2004 - 17:33Der er
10 kommentarer og 1 løsning
Liges stor afstande i ListBox
Hvis jeg nu har en listebox i VB 6.0, og har en liste der ser ca. sådan her ud: Jeg bruger: List.additem "001" & vbTab & "Cypress Hill" & vbtab & "CD 5"List.additem "002" & vbTab & "Ice Cube" & vbtab & "CD 6"
Så må ud lave nogle faste "mål". Fx. kan du lave en funktion, som der siger, at hvert "item"'s ID, er 3 tegn, og titlen er 16 tegn, og CD er 5 tegn("CD 55").
Det er faktisk noget rod, men kan lade sig gøre. Jeg vil dog anbefale dig at bruge listview. Men here goes:
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Public Const LB_SETTABSTOPS = &H192
' The number of tabs Public Const OBorder = 5 Public Tabulator(1 To OBorder) As Long
Ja, da jeg nærlæste - efter at have svaret - kunne jeg godt se at det var forskellene på længder af strenge der er problemet. Du ved vel HVOR lange tekster, der kan forekomme i de enkelte felter? Skal du videre bearbejde indholdet fra listeboksen ved klik på en post?
En mulighed er nemlig at gøre teksterne lige lange ved at tilføje blanktegn bag ved dem, det vil ikke fungere med en proportionalskrift uden samtidig at bruge tabulering.
'I et modul Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Public Const LB_SETTABSTOPS = &H192
' The number of tabs Public Const OBorder = 5 Public Tabulator(1 To OBorder) As Long
og resten skal du så have på din form! Bemærk hvis du skal højrestille nogle af dine strings skal du også til at arbejde med spaces og udregning af længderne.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.