Nedanstående kod funkar alldeles perfekt ...men Simplaste lösningen är att tömma listan innan du fyller den: Tack JohanProblem med listningen i Listbox
När jag trycker på Command1-Click() ....listas alla filer korrekt. Allt bra så
Alla filer listade i Listbox
Sen kan jag trycka en gång till och då listas samtliga filer igen (förutom de som redan fanns vid första klicket).
Då har jag alltså en dubblering av filerna. Osv.
Hur förhindrar jag dubblering etc...
Alltså oavsett antal klickningar på Command1 ska endast filerna visas 1 gång.
//
Sedan undrar jag i mitt föregående inlägg (eftersom inget svar inkommit). Är det ingen som vet hur Formuläret kan se likadant ut oavsett skärmstorleken. 15 tum 17 tum etc... utan stretchningar.??
//
Private Sub Command1_Click()
'Referens till Microsoft Scripting Runtime krävs för FSO
Dim objFso As Scripting.FileSystemObject
Dim objFolder As Scripting.Folder
Dim objFile As Scripting.File
Set objFso = New Scripting.FileSystemObject
Set objFolder = objFso.GetFolder("C:\Saker")
' Loopa igenom alla filer i foldern
For Each objFile In objFolder.Files
If objFile.Type = "Text Document" Then
List1.AddItem objFile.Name
End If
Next
Set objFso = Nothing
Set objFolder = Nothing
End Sub
'För att läsa in texten från vald fil i en label i en annan form kan man göra så här.
Private Sub List1_Click()
Dim text As String
Load Sakform
Sakform.Label1 = ""
Open "C:\Saker" & List1.text For Input As #1
Sakform.Visible = True
Do While Not EOF(1)
Line Input #1, text
Sakform.Label1 = Sakform.Label1 & text & vbNewLine
Loop
Close #1
Sakform.Image1.Picture = LoadPicture("C:\Saker\" & SetImgExt(List1.text, "jpg"))
Sakform.Show
End Sub
Private Function SetImgExt(ByVal OldExt As String, ByVal NewExt As String) As String
SetImgExt = Left$(OldExt, InStrRev(OldExt, ".")) & NewExt
End FunctionSv: Problem med listningen i Listbox
List1.Clear
Annars får du loopa igenom listan för varje fil och kolla om den redan finns, men det kan nog bli lite slött.
/johan/Sv: Problem med listningen i Listbox
Det var det jag glömde. Ska testa men det brukar funka.
mvh
Kenneth