Avatar billede flashback Nybegynder
06. oktober 2001 - 21:10 Der er 17 kommentarer og
1 løsning

Select line på list-box

Jeg ønsker at kunne markere en bestemt linie på en list-box... f.eks.

select linie 3 på listboxen

How?

/TheWizard
Avatar billede flashback Nybegynder
06. oktober 2001 - 21:13 #1
Private Sub List1_Click()

End Sub

Hvad skal jeg skrive hvis jeg ønsker at den skal reagere på select 3 ... og så gør den noget

f.eks.

if list1.text.linie(3).selected then
command1.visible = False

list1.text.linie(3).selected er self\' ikke rigtig - men hvad er det rigtige?
Avatar billede joern Nybegynder
06. oktober 2001 - 21:26 #2
Hej.

  For z = 0 To list1.ListCount - 1
      list1.ListIndex = z
      If list1.Selected(z) = true Then \"din kode\"
  Next

M.v.h.  Jørn
Avatar billede flashback Nybegynder
06. oktober 2001 - 21:58 #3
Den kommer med følgende fejl-meddelelse:

\"Next without for\"

Avatar billede flashback Nybegynder
06. oktober 2001 - 22:02 #4
Private Sub List1_Click()
For z = 0 To List1.ListCount - 1
      List1.ListIndex = z
      If List1.Selected(z) = True Then
      Label2.Caption = \"Lol\"
  Next

End Sub



Har jeg skrevet - er det nogenlunde rigtigt?
Avatar billede flashback Nybegynder
06. oktober 2001 - 22:09 #5
Jeg har nu prøvet at skrive    end if  til sidst...

For z = 0 To List1.ListCount - 1
      List1.ListIndex = z
      If List1.Selected(z) = True Then
      Label2.Caption = \"Lol\"
    End If
Next

Men kommer med en fejl-meddelelse:

Out of stack space !?
Avatar billede joern Nybegynder
06. oktober 2001 - 22:28 #6
flashback> Jeg vil kigge på det om lidt.

Har for nylig anvendt denne funktion, der gemmer poster fra en listbox, nemlig alle de der ikke er selected (multiselect = true).  De udvalgte bliver altså slettet.

Open netsti & \"husk\" & labper.Caption & \".dat\" For Output As #9
    For z = 0 To lsthusk.ListCount - 1
      lsthusk.ListIndex = z
      If lsthusk.Selected(z) = False Then Print #9, lsthusk.Text
    Next
  Close #9

Den giver ikke fejl.

M.v.h.  Jørn
Avatar billede joern Nybegynder
06. oktober 2001 - 22:33 #7
flashback>

Jeg har kopieret din kode ind i et lille nyt projekt, den giver ikke fejl hos mig!

Måske trænger din PC til en genstart ? 
Avatar billede ea_data Nybegynder
06. oktober 2001 - 22:37 #8
Hej
Jeg mener bare du kan skrive:
if List1.ListIndex=3 thne
noget kode....
end if
Avatar billede ea_data Nybegynder
06. oktober 2001 - 22:45 #9
Jeg skylder måske lige at sige at første post har nr 0
således at tredje post får nr 2 (0 1 2 3 osv)
Det kan derfor godt være at du skal skrive
if List1.ListIndex=2 then
Avatar billede flashback Nybegynder
06. oktober 2001 - 23:36 #10
Kan ikke lige få det til at virke :/
Avatar billede flashback Nybegynder
06. oktober 2001 - 23:39 #11
If List1.ListIndex = 3 Then
Label2.Caption = \"loL\"
End If

Virker ikke :(
Avatar billede flashback Nybegynder
06. oktober 2001 - 23:49 #12
Efter genstart virker:

Private Sub List1_Click()

For z = 0 To List1.ListCount - 1
      List1.ListIndex = z
      If List1.Selected(z) = True Then
      Label1.Caption = \"Lol\"
    End If

Next

End Sub


.. stadig ikke.
Avatar billede ea_data Nybegynder
07. oktober 2001 - 00:13 #13
Hvis du lægger følgende kode ind i listbox\'ens click event
burde det da virke:

If List1.ListIndex = 2 Then
Label2.Caption = \"loL\"
End If

Det virker naturligvis kun hvis du trykker på
den tredje line i listboxen
er det det du ønsker eller hvad???
Avatar billede flashback Nybegynder
07. oktober 2001 - 00:17 #14
Virker ikke her .. har checket
Avatar billede flashback Nybegynder
07. oktober 2001 - 00:18 #15
Fejl nr. 28

noget med stack space
Avatar billede ea_data Nybegynder
07. oktober 2001 - 00:37 #16
Du skal kun have disse linier i listboxens click event:

Private Sub List1_Click()
If List1.ListIndex = 2 Then
Label2.Caption = \"loL\"
End If
end sub

Så kommer der med garanti ikke den fejlmeddelelse som du nævner
Den kommer kun hvis du indsætter for ... next løkken nedenfor:

For z = 0 To List1.ListCount - 1
      List1.ListIndex = z
      If List1.Selected(z) = True Then
      Label1.Caption = \"Lol\"
    End If

Next

Avatar billede flashback Nybegynder
07. oktober 2001 - 00:40 #17
Ahhhh ... nu virker det jo ... taxi

ea_data får pointene... sorry joern :)
Avatar billede joern Nybegynder
07. oktober 2001 - 09:35 #18
Skidt med det.  Problemet er, at jeg ikke forstår dit spørgsmål.  M.v.h.  Jørn
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester