Jump to content

Calcular tamanho de pasta


Nuno

Recommended Posts

ya, eu sei que nao me vao fazer o programa, não era bem isso que eu queria dizer.. so quero uma ajuda... tipo o que tenho ate agora é isto

Public Class Form1

    Inherits System.Windows.Forms.Form

#Region " Windows Form Designer generated code "

    Public Sub New()
        MyBase.New()

        'This call is required by the Windows Form Designer.
        InitializeComponent()

        'Add any initialization after the InitializeComponent() call

    End Sub

    'Form overrides dispose to clean up the component list.
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        If disposing Then
            If Not (components Is Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub

    'Required by the Windows Form Designer
    Private components As System.ComponentModel.IContainer

    'NOTE: The following procedure is required by the Windows Form Designer
    'It can be modified using the Windows Form Designer.  
    'Do not modify it using the code editor.
    Friend WithEvents abrirfich As System.Windows.Forms.OpenFileDialog
    Friend WithEvents abrirpasta As System.Windows.Forms.FolderBrowserDialog
    Friend WithEvents lstdirs As System.Windows.Forms.ListBox
    Friend WithEvents Button1 As System.Windows.Forms.Button
    Friend WithEvents CmbDir As System.Windows.Forms.ComboBox
    Friend WithEvents txtcaminho As System.Windows.Forms.TextBox
    Friend WithEvents Txt1 As System.Windows.Forms.TextBox
    Friend WithEvents Lstfich As System.Windows.Forms.ListBox
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        Me.abrirfich = New System.Windows.Forms.OpenFileDialog
        Me.abrirpasta = New System.Windows.Forms.FolderBrowserDialog
        Me.lstdirs = New System.Windows.Forms.ListBox
        Me.Button1 = New System.Windows.Forms.Button
        Me.CmbDir = New System.Windows.Forms.ComboBox
        Me.txtcaminho = New System.Windows.Forms.TextBox
        Me.Txt1 = New System.Windows.Forms.TextBox
        Me.Lstfich = New System.Windows.Forms.ListBox
        Me.SuspendLayout()
        '
        'lstdirs
        '
        Me.lstdirs.Location = New System.Drawing.Point(48, 96)
        Me.lstdirs.Name = "lstdirs"
        Me.lstdirs.Size = New System.Drawing.Size(168, 186)
        Me.lstdirs.TabIndex = 0
        '
        'Button1
        '
        Me.Button1.Location = New System.Drawing.Point(456, 96)
        Me.Button1.Name = "Button1"
        Me.Button1.Size = New System.Drawing.Size(80, 32)
        Me.Button1.TabIndex = 1
        Me.Button1.Text = "Button1"
        '
        'CmbDir
        '
        Me.CmbDir.Items.AddRange(New Object() {"A:\", "C:\", "D:\", "E:\", "F:\", "P:\", "W:\", "Z:\"})
        Me.CmbDir.Location = New System.Drawing.Point(56, 24)
        Me.CmbDir.Name = "CmbDir"
        Me.CmbDir.Size = New System.Drawing.Size(160, 21)
        Me.CmbDir.TabIndex = 2
        Me.CmbDir.Text = "Seleccionar Directoria"
        '
        'txtcaminho
        '
        Me.txtcaminho.Location = New System.Drawing.Point(16, 64)
        Me.txtcaminho.Name = "txtcaminho"
        Me.txtcaminho.Size = New System.Drawing.Size(232, 20)
        Me.txtcaminho.TabIndex = 3
        Me.txtcaminho.Text = ""
        '
        'Txt1
        '
        Me.Txt1.Location = New System.Drawing.Point(280, 40)
        Me.Txt1.Name = "Txt1"
        Me.Txt1.Size = New System.Drawing.Size(128, 20)
        Me.Txt1.TabIndex = 4
        Me.Txt1.Text = ""
        '
        'Lstfich
        '
        Me.Lstfich.Location = New System.Drawing.Point(240, 96)
        Me.Lstfich.Name = "Lstfich"
        Me.Lstfich.Size = New System.Drawing.Size(152, 186)
        Me.Lstfich.TabIndex = 5
        '
        'Form1
        '
        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
        Me.ClientSize = New System.Drawing.Size(608, 318)
        Me.Controls.Add(Me.Lstfich)
        Me.Controls.Add(Me.Txt1)
        Me.Controls.Add(Me.txtcaminho)
        Me.Controls.Add(Me.CmbDir)
        Me.Controls.Add(Me.Button1)
        Me.Controls.Add(Me.lstdirs)
        Me.Name = "Form1"
        Me.Text = "Form1"
        Me.ResumeLayout(False)

    End Sub

#End Region
    Dim indice, directoria, ultimoacesso As String
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        'Projecto Pedro Costa & Nuno Costa

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira

        'listar directórios da directoria escolhida na combobox
        Select Case CmbDir.SelectedIndex
            Case 0
                listardirectorios("A:\", Me.lstdirs)
                txtcaminho.Text = "A:\"
                listarficheiros("A:\", "*.*", Me.Lstfich)
            Case 1
                listardirectorios("C:\", Me.lstdirs)
                txtcaminho.Text = "C:\"
                listarficheiros("C:\", "*.*", Me.Lstfich)
            Case 2
                listardirectorios("D:\", Me.lstdirs)
                txtcaminho.Text = "D:\"
            Case 3
                listardirectorios("g:\", Me.lstdirs)
                txtcaminho.Text = "g:\"
            Case 4
                listardirectorios("F:\", Me.lstdirs)
            Case 5
                listardirectorios("P:\", Me.lstdirs)
            Case 6
                listardirectorios("W:\", Me.lstdirs)
            Case 7
                listardirectorios("Z:\", Me.lstdirs)
        End Select
        'listarficheiros(directoria, "*.*", Me.Lstfich)

    'listardirectorios("E:\", Me.lstdirs)
    End Sub
    Private Sub lstdirs_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lstdirs.DoubleClick

        ' Dim indice, directoria, ultimoacesso As String

        indice = lstdirs.SelectedItem 'Indica que o indice é igual á directoria sublinhada com 1 click na listbox
        txtcaminho.Text = txtcaminho.Text & indice & "\"
        directoria = txtcaminho.Text 'Indica que a directoria é igual á textbox caminho pa seguir a sequencia da arvore
        listardirectorios(directoria, Me.lstdirs) 'lista os directorios do camino especificado na variavel directoria
        listarficheiros(directoria, "*.*", Me.Lstfich)
    End Sub

Private Sub lstdirs_SelectedIndexChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lstdirs.SelectedIndexChanged
        Dim varaux = New DirectoryInfo(directoria & lstdirs.SelectedItem)    ' declaraçao de uma variavel auxiliar pa poder aceder ás propriedades das directorias
        ultimoacesso = CStr(varaux.LastAccessTime)
        Txt1.Text = ultimoacesso

    End Sub
End Class

isto e o programa principal agora ve se o que ta dentro do modulo...
mports System.IO

Module Module1

    Sub listardirectorios(ByVal strParente As String, ByVal lista As ListBox)

        'Projecto Pedro Costa & Nuno Costa

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'criar um array para manipular directorias
        Dim meusdirs() As DirectoryInfo
        Dim i As Integer
        lista.Items.Clear() 'limpar lista

        Dim directorio As New DirectoryInfo(strParente)

        'preencher array
        meusdirs = directorio.GetDirectories()

        'percorrer array
        For i = 0 To UBound(meusdirs)
            lista.Items.Add(meusdirs(i).Name) 'adiciona a lista o nome do directorio
        Next
    End Sub

    Sub listarficheiros(ByVal directorio As String, ByVal extensao As String, ByVal lista As ListBox)

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'variavel pa manipular directorios
        Dim meudir As DirectoryInfo
        'criar array pa ficheiros
        Dim ficheiros() As FileInfo
        Dim i As Integer
        'criar instancia pa manipular o directorio especificado
        meudir = New DirectoryInfo(directorio)
        'encher array com os ficheiros de acordo com extensao especificada
        ficheiros = meudir.GetFiles(extensao)
        lista.Items.Clear() 'limpar lista
        ' se o array nao estiver vazio fazer loop
        If UBound(ficheiros) >= 0 Then

            For i = 0 To UBound(ficheiros)
                lista.Items.Add(ficheiros(i).Name) 'adicionar
            Next
        End If
    End Sub
End Module


mports System.IO

Module Module1

    Sub listardirectorios(ByVal strParente As String, ByVal lista As ListBox)

        'Projecto Pedro Costa & Nuno Costa

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'criar um array para manipular directorias
        Dim meusdirs() As DirectoryInfo
        Dim i As Integer
        lista.Items.Clear() 'limpar lista

        Dim directorio As New DirectoryInfo(strParente)

        'preencher array
        meusdirs = directorio.GetDirectories()

        'percorrer array
        For i = 0 To UBound(meusdirs)
            lista.Items.Add(meusdirs(i).Name) 'adiciona a lista o nome do directorio
        Next
    End Sub

    Sub listarficheiros(ByVal directorio As String, ByVal extensao As String, ByVal lista As ListBox)

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'variavel pa manipular directorios
        Dim meudir As DirectoryInfo
        'criar array pa ficheiros
        Dim ficheiros() As FileInfo
        Dim i As Integer
        'criar instancia pa manipular o directorio especificado
        meudir = New DirectoryInfo(directorio)
        'encher array com os ficheiros de acordo com extensao especificada
        ficheiros = meudir.GetFiles(extensao)
        lista.Items.Clear() 'limpar lista
        ' se o array nao estiver vazio fazer loop
        If UBound(ficheiros) >= 0 Then

            For i = 0 To UBound(ficheiros)
                lista.Items.Add(ficheiros(i).Name) 'adicionar
            Next
        End If
    End Sub
End Module
mports System.IO

Module Module1

    Sub listardirectorios(ByVal strParente As String, ByVal lista As ListBox)

        'Projecto Pedro Costa & Nuno Costa

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'criar um array para manipular directorias
        Dim meusdirs() As DirectoryInfo
        Dim i As Integer
        lista.Items.Clear() 'limpar lista

        Dim directorio As New DirectoryInfo(strParente)

        'preencher array
        meusdirs = directorio.GetDirectories()

        'percorrer array
        For i = 0 To UBound(meusdirs)
            lista.Items.Add(meusdirs(i).Name) 'adiciona a lista o nome do directorio
        Next
    End Sub

    Sub listarficheiros(ByVal directorio As String, ByVal extensao As String, ByVal lista As ListBox)

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'variavel pa manipular directorios
        Dim meudir As DirectoryInfo
        'criar array pa ficheiros
        Dim ficheiros() As FileInfo
        Dim i As Integer
        'criar instancia pa manipular o directorio especificado
        meudir = New DirectoryInfo(directorio)
        'encher array com os ficheiros de acordo com extensao especificada
        ficheiros = meudir.GetFiles(extensao)
        lista.Items.Clear() 'limpar lista
        ' se o array nao estiver vazio fazer loop
        If UBound(ficheiros) >= 0 Then

            For i = 0 To UBound(ficheiros)
                lista.Items.Add(ficheiros(i).Name) 'adicionar
            Next
        End If
    End Sub
End Module
mports System.IO

Module Module1

    Sub listardirectorios(ByVal strParente As String, ByVal lista As ListBox)

        'Projecto Pedro Costa & Nuno Costa

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'criar um array para manipular directorias
        Dim meusdirs() As DirectoryInfo
        Dim i As Integer
        lista.Items.Clear() 'limpar lista

        Dim directorio As New DirectoryInfo(strParente)

        'preencher array
        meusdirs = directorio.GetDirectories()

        'percorrer array
        For i = 0 To UBound(meusdirs)
            lista.Items.Add(meusdirs(i).Name) 'adiciona a lista o nome do directorio
        Next
    End Sub

    Sub listarficheiros(ByVal directorio As String, ByVal extensao As String, ByVal lista As ListBox)

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'variavel pa manipular directorios
        Dim meudir As DirectoryInfo
        'criar array pa ficheiros
        Dim ficheiros() As FileInfo
        Dim i As Integer
        'criar instancia pa manipular o directorio especificado
        meudir = New DirectoryInfo(directorio)
        'encher array com os ficheiros de acordo com extensao especificada
        ficheiros = meudir.GetFiles(extensao)
        lista.Items.Clear() 'limpar lista
        ' se o array nao estiver vazio fazer loop
        If UBound(ficheiros) >= 0 Then

            For i = 0 To UBound(ficheiros)
                lista.Items.Add(ficheiros(i).Name) 'adicionar
            Next
        End If
    End Sub
End Module
mports System.IO

Module Module1

    Sub listardirectorios(ByVal strParente As String, ByVal lista As ListBox)

        'Projecto Pedro Costa & Nuno Costa

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'criar um array para manipular directorias
        Dim meusdirs() As DirectoryInfo
        Dim i As Integer
        lista.Items.Clear() 'limpar lista

        Dim directorio As New DirectoryInfo(strParente)

        'preencher array
        meusdirs = directorio.GetDirectories()

        'percorrer array
        For i = 0 To UBound(meusdirs)
            lista.Items.Add(meusdirs(i).Name) 'adiciona a lista o nome do directorio
        Next
    End Sub

    Sub listarficheiros(ByVal directorio As String, ByVal extensao As String, ByVal lista As ListBox)

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'variavel pa manipular directorios
        Dim meudir As DirectoryInfo
        'criar array pa ficheiros
        Dim ficheiros() As FileInfo
        Dim i As Integer
        'criar instancia pa manipular o directorio especificado
        meudir = New DirectoryInfo(directorio)
        'encher array com os ficheiros de acordo com extensao especificada
        ficheiros = meudir.GetFiles(extensao)
        lista.Items.Clear() 'limpar lista
        ' se o array nao estiver vazio fazer loop
        If UBound(ficheiros) >= 0 Then

            For i = 0 To UBound(ficheiros)
                lista.Items.Add(ficheiros(i).Name) 'adicionar
            Next
        End If
    End Sub
End Module
mports System.IO

Module Module1

    Sub listardirectorios(ByVal strParente As String, ByVal lista As ListBox)

        'Projecto Pedro Costa & Nuno Costa

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'criar um array para manipular directorias
        Dim meusdirs() As DirectoryInfo
        Dim i As Integer
        lista.Items.Clear() 'limpar lista

        Dim directorio As New DirectoryInfo(strParente)

        'preencher array
        meusdirs = directorio.GetDirectories()

        'percorrer array
        For i = 0 To UBound(meusdirs)
            lista.Items.Add(meusdirs(i).Name) 'adiciona a lista o nome do directorio
        Next
    End Sub

    Sub listarficheiros(ByVal directorio As String, ByVal extensao As String, ByVal lista As ListBox)

        'consultado em: Técnicas avançadas em Visual basic.net volume1 de João Ferreira pag 288 e 289

        'variavel pa manipular directorios
        Dim meudir As DirectoryInfo
        'criar array pa ficheiros
        Dim ficheiros() As FileInfo
        Dim i As Integer
        'criar instancia pa manipular o directorio especificado
        meudir = New DirectoryInfo(directorio)
        'encher array com os ficheiros de acordo com extensao especificada
        ficheiros = meudir.GetFiles(extensao)
        lista.Items.Clear() 'limpar lista
        ' se o array nao estiver vazio fazer loop
        If UBound(ficheiros) >= 0 Then

            For i = 0 To UBound(ficheiros)
                lista.Items.Add(ficheiros(i).Name) 'adicionar
            Next
        End If
    End Sub
End Module

o que isto faz é: lista as pastas de uma directoria e ao clicar 2 vezes numa determinada pasta...

de um lado lista os ficheiros e no outro as pastas...

brigadao pela atenção...

VB.net

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.