24. juli 2004 - 01:14Der er
19 kommentarer og 1 løsning
At arbejde med ListView's
Nogen der kan hjælpe mig med at finde ud af at bruge ListView box'en? Det som jeg har behov for at kunne, er at tilføje/fjerne brugere på listen, kalde en form når der bliver dobbelt-klikket på et navn, og vise en lille menu med "Add Ignore", og "Add Friend" når der bliver højre-klikket på det bestemte navn...
Private Sub Form_Load() Dim i As Long Dim j As Long Dim Litem As ListItem With ListView1 .View = 3 .ColumnHeaders.Add , , "Header 1", 1000 .ColumnHeaders.Add , , "Header 2", 1000 .ColumnHeaders.Add , , "Header 3", 1000 .ColumnHeaders.Add , , "Header 4", 1000 With .ListItems .Clear For i = 1 To 50 Set Litem = .Add(, , "Header 1 (" & i & ")") For j = 1 To 3 With Litem .SubItems(j) = "Header " & (j + 1) & " (" & i & ")" End With Next 'j Next 'i End With End With End Sub
Private Sub ListView1_Click() With ListView1 If Not .SelectedItem Is Nothing Then With .SelectedItem Me.Caption = .Text & _ .SubItems(1) & _ .SubItems(2) & _ .SubItems(3) End With End If End With End Sub
Private Sub ListView1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single) With ListView1 If Button = 2 And Not .SelectedItem Is Nothing Then .ListItems.Remove .SelectedItem.Index End If End With End Sub '---------------------------------- Form1 ----------------------------------
Private Sub Form_Load() Dim i As Long Dim j As Long Dim Litem As ListItem With ListView1 ' Setter ListView1 til List mode (3) .View = 3 ' Tilføjer 4 x Headers (1, 2, 3, 4) .ColumnHeaders.Add , , "Header 1", 1000 .ColumnHeaders.Add , , "Header 2", 1000 .ColumnHeaders.Add , , "Header 3", 1000 .ColumnHeaders.Add , , "Header 4", 1000
With .ListItems ' Sletter det som ikke er blevet tilføjet ;) .Clear For i = 1 To 50 ' Tilføjer noget i ListView1 Set Litem = .Add(, , "Header 1 (" & i & ")") For j = 1 To 3 With Litem ' Tilføjer noget i SubItems .SubItems(j) = "Header " & (j + 1) & " (" & i & ")" End With Next 'j Next 'i End With End With End Sub
Private Sub ListView1_Click() With ListView1 ' Hvis ikke .SelectedItem er Nothing If Not .SelectedItem Is Nothing Then With .SelectedItem ' Viser det som står i ListView1 og SubItems Me.Caption = .Text & _ .SubItems(1) & _ .SubItems(2) & _ .SubItems(3) End With End If End With End Sub
Private Sub ListView1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single) With ListView1 ' Hvis du højre klikker og hvis ikke .SelectedItem er Nothing If Button = 2 And Not .SelectedItem Is Nothing Then ' Fjerner det valgte index .ListItems.Remove .SelectedItem.Index End If End With End Sub '---------------------------------- Form1 ----------------------------------
Hmm.. Jeg tror ikke helt at jeg kan finde ud af det.. :-) Hvad gør jeg galt? jeg har header "Users", og víl gerne tilføje Test1, Test2 og Test3
Private Sub cmdChatLogon_Click() With UserList .ColumnHeaders.Add , , "Users", 1815 ListItems.Add , , "Test1" ListItems.Add , , "Test2" ListItems.Add , , "Test3" End With End Sub
..ColumnHeaders... skal du kun bruge når du starter dit program ;)
Private Sub cmdAdd_Click() Dim Litem As ListItem With ListView1.ListItems Set Litem = .Add(, , "Users 1") With Litem .SubItems(1) = "Test 1" .SubItems(2) = "Test 2" .SubItems(3) = "Test 3" End With End With End Sub
Private Sub Form_Load() With ListView1 .View = 3 .ColumnHeaders.Add , , "Users", 1815 .ColumnHeaders.Add , , "Test 1" .ColumnHeaders.Add , , "Test 2" .ColumnHeaders.Add , , "Test 3" End With End Sub
Sådan her virker det... : Dim dkflag As String dkflag = App.Path & "\Icons\flags\denmark2.gif" Dim Litem As ListItem With UserList.ListItems Set Litem = .Add(, , "CroncK") End With Private Sub Form_Load() With UserList .View = 3 .ColumnHeaders.Add , , "Users", 1815 End With End Sub
Hvordan får jeg billedet dkflag ind lige foran Cronck på listen?
Du skal bruge en ImageList, tilføj nogle billeder i den og prøv...
Private Sub cmdAdd_Click() 'Her setter vi billede index 1 på. (.., 1, 1) Call ListView1.ListItems.Add(, , "CroncK", 1, 1) End Sub
Private Sub Form_Load() With ListView1 .View = 3 Set .Icons = ImageList1 '<-- ImageList Set .SmallIcons = ImageList1 '<-- ImageList .ColumnHeaders.Add , , "Users", 1815 End With End Sub
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.