hej hur gör man? Det finns kod som visar hur man listar kataloger och det finns kod som demonstrerar hur man lägger till noder. Lite hjälp: titta på dokumentationen till Treeview-kontrollen i msdn. nu har jag letat igenom alla ställen på msdn som jag kan komma att tänka på, utan att hitta hur man listar mappar. Det ända som finns är "ta reda på information om en mapp" eller "kolla om en mapp existerar". Dom få exempel jag har hittat har alldrig varit i vb6 utan i c# eller php. Antingen är jag helt sämst på att leta eller så missar jag det jag letar efter under sökningen. Lägg till "Microsoft Scripting Runtimes" i References. så här blev koden tillslut: ojdå :) såg inte att du hade laggt till något lista mappar
jag vill lista mapparna som finns på c: i en treeviewer men bara det första lagret, om man kan kalla det så. vill exempelvis kunna få en lista liknanden denna:
NVIDIA
Program
Sierra
WinNT
osv
som den skulle göra på min dator. Jag använder vb6.
tack på förhand
//simonSv: lista mappar
jag har letat på msdn och många andra ställen men inte hittat ett exempel eller förklaring hur man listar alla mappar som finns på c:\ (i en treeviewer)
det finns hur man kollar om en viss mapp existerar men inte alla mappar :/Sv: lista mappar
Genom att visa ett exempel så kommer du gå miste om erfarenheterna att söka upp informationen själv. Dessutom kombinera koden. Vilket är vad programmering går ut på.
Eller om man uttrycker det kort.
Ska vi göra det åt dig programmerar du inte.Sv: lista mappar
För ett exempel på hur du letar mappar: kolla i dokumentationen efter kommandot dir...Sv: lista mappar
Själva treeviewer kontrollen har aldirg varit nått problem men att hitta något sätt att fylla den med har visat sig vara ett mycket svårare fall att lösa.
dock har jag hittat ett gammal exempel här i forumet som jag tror ska gå att använda.Sv: lista mappar
lägg in detta:
<code>
Option Explicit
Private Sub Form_Load()
Dim fso As FileSystemObject
Dim f As Folder, f2 As Folder
Set fso = New FileSystemObject
Set f = fso.GetFolder("C:\")
For Each f2 In f.SubFolders
Debug.Print f2.Name
Next
End Sub
</code>Sv: lista mappar
<code>
Function ListaUnderMappar(startmapp)
Set FileList = CreateObject("Scripting.Dictionary")
Set fso = CreateObject("Scripting.FileSystemObject")
'medans jag gör resten av koden bara för att visa att det funkar!! :D
TreeView1.Nodes.Add , , startmapp, startmapp
Set folderobj = fso.GetFolder(startmapp)
Set fc = folderobj.SubFolders
For Each mapp In fc
TreeView1.Nodes.Add startmapp, tvwChild, mapp.Name, mapp.Name
Next
End Function
</code>
och för att kalla på denna funkation så funkar detta bra...
Private Sub Command2_Click()
ListaUnderMappar ("c:/program/")
End SubSv: lista mappar
tack så mycket det måste jag testa, förmodligen är din kod fyra tusen gånger bättre än min. tack