Jak vytvořit stromovou strukturu složek? Jednoduše!
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Jak vytvořit stromovou strukturu složek? Jednoduše!Jak vytvořit stromovou strukturu složek? Jednoduše!

 
Hledat
Vybavení pro Laser Game
Laser Game Praha
Pokemon Go - vše o nové hře
Harry Potter a prokleté dítě

Jak vytvořit stromovou strukturu složek? Jednoduše!

Google       Google       11. 4. 2007       18 450×

Ukládá vaše aplikace cokoliv na disk a uživatel si umístění vybírá? Pak se vám určitě bude hodit tato malá vychytávka. Ukážeme si, jak vytvořit stromovou strukturu složek na disku.

Reklama
Reklama

Ze všeho nejdříve si musíme k projektu připojit knihovnu pro práci se soubory. To uděláme velice jednoduše: Project → References → Microsoft Scripting Runtime.

Dále budeme potřebovat samotný TreeView: Project → Components → Microsoft Windows Common Controls 6.0 SP4. Nyní z Toolboxu vybereme TreeView a umístíme na formulář. Ve vlastnostech nastavíme LineStyle = 1, Style = 6.

Do události formuláře Form_Load() vložíme kód, který nám při načtení formuláře zobrazí kořenovou složku C:/. Tím, že načteme i její podsložky, se nám u C:/ objeví znaménko „+“ pro rozevírání:

Private Sub Form_Load()
Dim fso As New FileSystemObject, slozka As Folder, PodSlozky As Folders, objekt As Variant

Set slozka = fso.GetFolder("C:/") "proměnná se nastaví na kořenovou složku
Set PodSlozky = slozka.SubFolders "získáme kolekci podsložek kořenové složky

TreeView1.Nodes.Add , , slozka.Path, slozka.Path "zobrazí kořenovou složku

For Each objekt In PodSlozky "procházím kolekci podsložek
    With TreeView1
        .Nodes.Add slozka.Path, tvwChild, objekt.Path, objekt.Name "načteme podsložky kořenové složky, ty se ale zobrazí až pro rozevření
    End With
Next objekt

Form1.Show

End Sub

A nyní potřebujeme při každém kliknutí na znaménko „+“ načíst podsložky těch složek, které se nám právě zobrazí, aby se i u nich zobrazilo znaménko plus:

Private Sub TreeView1_Expand(ByVal Node As MSComctlLib.Node)
Dim fso As New FileSystemObject, slozka As Folder, PodSlozky As Folders, objekt As Variant, objekt2 As Variant

On Error Resume Next 
Set slozka = fso.GetFolder(Node.FullPath) "nastavíme na složku, na kterou jsme klikli
Set PodSlozky = slozka.SubFolders "získáme kolekci podsložek složky

For Each objekt In PodSlozky "procházíme kolekci podsložek
    If objekt.Name <> "System Volume Information" Then ‘systém nás nemá rád 
    For Each objekt2 In objekt.SubFolders "procházíme kolekci podsložek podsložek složky
        With TreeView1
        .Nodes.Add objekt.Path, tvwChild, objekt2.Path, objekt2.Name "načteme tyto složky
        End With
    Next objekt2
    End If
Next objekt
End Sub

Nyní stačí pouze nadeklarovat globální proměnnou v sekci Declarations:

Dim oznaceno as string

Poté na formulář vložte tlačítko a do události Command1_Click() vložte jednoduchý kód.

oznaceno = TreeView1.SelectedItem.FullPath & "\"

Tímto se vám cesta uloží do proměnné.

Kód počítá pouze s kořenovou složkou C:, lze ho ale snadno upravit i na další disky.

Výsledek by mohl vypadat i nějak takto:

Doufám, že vám tato maličkost bude užitečná.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

4 názory  —  4 nové  
Hlasování bylo ukončeno    
0 hlasů
Google
Autor rád programuje, trochu umí Visual Basic, učí se C# a ASP.NET, zajímá se o vše kolem počítačů.

Nové články

Obrázek ke článku JIC otevírá největší digitální dílnu pro veřejnost v České republice

JIC otevírá největší digitální dílnu pro veřejnost v České republice

JIC otevírá první nonstop veřejně dostupnou digitální dílnu světového formátu s vybavením za 3 miliony korun. Dílnu může využívat po registraci kdokoliv. V  prostorách vzniknou prototypy produktů místních startupů, projekty kutilů a studentů i umělecká díla. Cílem dílny je zpřístupnit veřejnosti drahé přístroje a přitáhnout více podnikavých lidí k technickým oborům.

Reklama
Reklama
Obrázek ke článku Nový IT hráč na českém trhu

Nový IT hráč na českém trhu

V roce 2015 otevřela v Praze na Pankráci v budově City Tower své kanceláře společnost EPAM Systems (NYSE:EPAM), jejíž centrála se nachází v USA. Společnost byla založená v roce 1993 a od té doby prošla velkým vývojem a stále roste.

Obrázek ke článku České Radiokomunikace opět hledají nejlepší nápady pro internet věcí

České Radiokomunikace opět hledají nejlepší nápady pro internet věcí

České Radiokomunikace (CRA) pořádají druhý ročník CRA IoT Hackathonů. Zájemci z řad vývojářů a fanoušků moderních technologií mohou změřit své síly a během jediného dne sestrojit co nejzajímavější funkční prototyp zařízení, které bude komunikovat prostřednictvím sítě LoRa. CRA IoT Hackathony se letos uskuteční ve dvou fázích, na jaře a na podzim, v různých městech České republiky. Jarní běh se odstartuje 31. března v Brně a 7. dubna v Praze.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý