USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  Visual Basic.Net    (ActiveX/Controles/DLL)

Título da Dica:  Arrastando e soltando arquivos em um ListBox.
Postada em 9/10/2003 por ~Ð@®£@Ñ            
Lembra como fazíamos uma operação de arrastar e soltar no VB6 ??? Se você não lembra dê uma olhada no artigo - Arrastar e Soltar , é só começar . Mas como estamos em tempos de VB.NET , como podemos fazer isto no VB.NET ?  Nesta dica eu mostro como ...

a - Inicie um novo projeto no Visual Studio.NET com as seguintes características (sinta-se a vontade para alterar a seu gosto.)

Project Types : Visual Basic Projects
Templates : Windows Application
Name : ArrastarSoltar
Location : c:\vbnet \ArrastarSoltar
b- No formulário padrão - form1.vb - inclua um controle ListBox e um controle Label conforme a figura abaixo :

O controle ListBox possui dois eventos que permitem a operação arrastar e soltar , são eles : DragEnter e DragDrop.
DragEnter - ocorre quando você arrasta um objeto dentro dos limites de um controle e é usado para determinar se o objeto que esta sendo arrastado tem a permissão para isto. Um ícone indicando a ocorrência deste evento.

DragDrop - ocorre quando um objeto que esta sendo arrastado sobre o controle é solto sobre o mesmo. Usamos este evento para retornar o objeto através do objeto Data.

Data - o método GetData deste objeto retorna um array de strings que contém o caminho completo dos arquivos que estamos arrastando sobre o controle ListBox.


Devemos inserir código nos eventos DragEnter e DragDrop do controle ListBox. Para inserir código estes eventos faça o seguinte :

No Solution Explorer selecione o formulário - form1.vb e clique com o botão direito do mouse e selecione - View Code.
A seguir , no lado esquerdo superior , selecione na combo o nome ListBox e no lado direito na combo que mostra os evento selecione : DragEnter. A seguir insira o código :
Private Sub ListBox1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListBox1.DragEnter

If (e.Data.GetDataPresent(DataFormats.FileDrop)) Then

     e.Effect = DragDropEffects.All

Else

     e.Effect = DragDropEffects.None

End If

End Sub


Repita os mesmos passo para o evento DragDrop e insira o seguinte código :

Private Sub ListBox1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListBox1.DragDrop



Dim s() As String = e.Data.GetData("FileDrop", False)

Dim i As Integer


For i = 0 To s.Length - 1

    ListBox1.Items.Add(s(i))

Next

End Sub

Agora é só começar a arrastar e soltar...  Até mais !!
 


CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página