| |
|
|
 Nico Madysa |
$H Windows.ph
$H Messages.ph
$I controls.prf
3 + 4 + 8
proc Add_Dir
parámetros pfad$ , rang% , p&
declarar i%[14] , nextdir$
if (rang% < 0)
p& = TV_AddItem(tv&,0,2,2,Laufwerk + pfad$ + \,i#[t%])
inc rang%
inc t%
endif
ClearList
ClearList lb&[rang%]
AddFiles pfad$ + \*
whileloop 0 , %GetCount
Match$(^~[.+~]$,ListBoxItem$(&bucle))
if %MatchPos >= 0
AddStrings(lb&[rang%],$Match)
endif
EndWhile
DeleteString(lb&[rang%],Seleccione String(lb&[rang%],(-1),[.]))
DeleteString(lb&[rang%],Seleccione String(lb&[rang%],(-1),[..]))
ClearList
MoveHandleToList(lb&[rang%])
clear i%[rang%]
mientras que i%[rang%] < (GetCount(lb&[rang%]))
nextdir$ = GetString$(lb&[rang%],i%[rang%])
nextdir$ = Mid$(nextdir$,2,len(nextdir$) - 2)
TV_AddItem(tv&,p&,0,1,nextdir$,i#[t%])
inc t%
if rang% < 14
Add_Dir (pfad$ + \ + nextdir$) , (rang% + 1) , i#[t% - 1].hItem&
endif
i%[rang%] = i%[rang%] + 1
wend
ENDPROC
proc final
FreeDLL shl&
il#.Destroy()
Disponer il#
Disponer i#[]
end
ENDPROC
declarar il# , tv& , tx& , shl& , i#[1999] , lb&[14] , t%
Dim i#[] , TV_Item
shl& = UseDll(SHELL32)
cls SysColor(15)
Título de la ventana Bitte warten, erstelle Verzeichnisbaum...
whileloop 15
lb&[&bucle - 1] = Crear(ListBox,%hWnd,1,0,0,0,0)
EndWhile
il# = New(ImageList)
il#.AddImage($SysPath + \Shell32.dll,3)
il#.AddImage($SysPath + \Shell32.dll,4)
il#.AddImage($SysPath + \Shell32.dll,8)
tv& = Crear(Treeview,%hWnd,il#.hList&,5,5,200,400)
Add_Dir C: , (-1) , 0 <-- hier el Laufwerksbuchstaben/Anfangspfad eingeben; al Ende darf kein Backslash posición
TV_Expand tv& , i#[0].hItem&
SetText %hWnd , str$(t%) + Einträge en el Treeview
whilenot IsKey(27)
waitinput
wend
Beenden
end
Mit diesem Code se una Treeview producido y por Rekursion (bin Yo stolz, dass Yo el hinbekommen habe! ) con allen Verzeichnissen una unidad de gefüllt. Leider es el muy umständlich y dauert bastante largo. Daher Yo zwei Fragen: 1.) Como viele Einträge enthält el Treeview en euch máximo? (Steht después de el Laden en el Titelleiste) Mir es por lo tanto, a wissen, si el Handles reichen. 2.) Gibt no irgendeinen einfacheren Weg? In el Win32.hlp Yo nichts gefunden y Ensamblador saber Yo mich sonderlich de. Könnte al así beschleunigen? |
 |
|
| |
|
|
|
 Hubert Binnewies | Yo hätte lo sí gerne getestet, aber desafortunadamente Yo sólo XProfan 9.1...sorry...
Hubert |
|
|
| WinXP Prof, XProfan 9.1 Newbie
Ein kluger Kopf sagte mal: "Nach dem derzeitigen Stand der Technik ist es unmöglich Programme zu schreiben, die fehlerfrei laufen!" | 25.04.2007 ▲ |
|
|
|
|
 Jörg Sellmeyer | Usted debe no todos Daten inmediatamente einlesen, pero sólo en Bedarf. Also siempre sólo el Archivos auslesen, el gerade en el aktuellen Ordner son. Sonst mußt Usted auch andauernd alles aktualisieren, si se al Dateibestand qué ändert. Leider muß una continuación auch así fiese Messages como Clic en Plus-/Minuszeichen antes el Ordner abfangen. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ...  | 25.04.2007 ▲ |
|
|
|
|
 | Usted könntest mi addfiles.dll benutzen! Diese es weitaus más rápido y bietet ebenso Rekursion a para Abwinken. Tarea des XProfanprogrammes es entonces sólo todavía una Loop para Befüllen des TreeViews. |
|
|
| |
|
|
|
 | Übrigens - controls.prf solltest Usted para obigen Ejemplo ya mitliefern - o DownloadURL angeben. |
|
|
| |
|
|
|
 Frank Abbing | Hm,
steigt en me después de corto Tiempo de con el Fehler: Das Element no existe. (Línea 46)
Su Solución, el Icons de el Shell32.dll a invitar, es denkbar ungeeignet, porque el Icons así una schlechte Qualität aufweisen. Yo sería en cada Fall el Sistema-Imageliste benutzen, entonces erhälst du hochwertige Icons. In mi Listview.dll-Paket befindet se mi Treeview.dll, el ebenfalls Verzeichnisse en un Treeview listet. Mirar rein, así debería el Icons aussehen. Ist auch una muy schnelle Solución, como en Ensamblador erstellt.
Tal vez hilft dir el Message WM_SETREDRAW, en deine Geschwindogkeit a erhöhen. |
|
|
| |
|
|
|
 Thomas Freier | Hätte Yo gerne angesehen. Aber desafortunadamente brechen todos Beispiele con Fehler de. Listview.zip vom März 2007 |
|
|
| |
|
|
|
 Frank Abbing | Ach nö... tener el Codes heut Nachmittag todavía selber getestet. Laufen sauber bajo XP... Bestimmt es dein Programmeditor no en el passenden Pfad eingestellt. Probierste veces feste Pfade oder $progdir? |
|
|
| |
|
|
|
 Thomas Freier | Glaube Yo dir. Komme pero no más. Anbei el Original con $drive y una vez con $PROGDIR...https://XProfan.com/images/smiles/6.gif |
|
|
| |
|
|
|
 Frank Abbing | Beide Exe trabajo einwandfrei en me. Wüsste no, Yo como para dich tun podría. Würden el Por favor, todavía weitere User testen? |
|
|
| |
|
|
|
 | @Franco Beide DLL - (Listview.DLL y Treeview.DLL) funtionieren einwandfrei. Schliesslich son wir Usted oft genug en el Wecker gegangen, porque otra vez veces alguien Bug fand oder una Verbesserungsvorschlag hatte 
Im Bild sieht uno el gleichzeitige Benutzung el beiden DLL - Das Ventana principal zeigt el Listview.dll con allen relevanten Daten a. Im Vordergrund Es el Treeview.dll aktiv.  |
|
|
| |
|
|
|
 Carlo Keil | Yo vermute una Zusammenhang con el Verzeichnisstruktur y así con el Rekursionstiefe. Auf media C:-Laufwerk (Verzeichnisse y Verzeichnisschachtelungen fast sin Ende) hay auch el Fehlermeldung Das Element no existe.. Auf mi P:-Laufwerk (enthält sólo mi komplettes Profano-Entwicklungssystem) klappt lo sin Fehlermeldung.
Saludo Carlo |
|
|
| |
|
|