Re: Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-18 Por tôpico Adriano Santos
Pessoal,

Nem publiquei o drag-and-drop ontem pq a solução que tem no meu exemplo é
bem simples, olhem só:

procedure TForm1.ListaOrigemDragDrop(Sender, Source: TObject; X, Y:
Integer);
begin
  if (Source = ListaOrigem) or (Source = ListaDestino) then
TListBox(Sender).EndDrag(True);
end;

procedure TForm1.ListaOrigemDragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  if (Source = ListaOrigem) or (Source = ListaDestino) then
Accept := True
end;

procedure TForm1.ListaOrigemEndDrag(Sender, Target: TObject; X, Y: Integer);
begin
  if Target  nil then
// trata o fim de uma operacao que foi aceita
TListbox(Sender).MoveSelection(TListBox(Target){ListaDestino});
end;

procedure TForm1.ListaOrigemMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (Button = mbLeft) and ((Sender = ListaOrigem) or (Sender =
ListaDestino)) then
TListBox(Sender).BeginDrag(False) // inicia a operacao
end;


Aqui estou fazendo o drag-and-grop de um ListBox para outro.

Olhei o código do link que passaram e aparentemente tá um xuxu beleza, mas
não funciona. Tô dando uma olhada pra ver se consigo descobrir o problema.

http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-sua-aplica%C3%A7%C3%A3o


-- 
Adriano Santos
http://twitter.com/asrsantos
www.delphitodelphi.blogspot.com


2010/6/17 Vitor Yahoo vredesredsys...@yahoo.com.br



 Entrando de gaiato na história aí...
 Não seria mais simples utilizar aqueles componentes da Win 31? Coloca os
 componentes na tela, inclusive o fileslistbox (ou o nome que seja) e
 trabalha com os arquivos pelo index desse componente. Se o caso é só
 renomear...

 -Mensagem original-
 De: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br [mailto:
 delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br] Em
 nome de Adriano Santos
 Enviada em: quinta-feira, 17 de junho de 2010 15:44

 Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
 Assunto: Re: Res: Res: [delphi-br] Arrastando arquivos do windows para
 dentro de um listbox

 Beleza,

 Meu, vou publicar no blog hoje a noite do meu drag-and-drop, não sei se
 vai ajudar.

 Se não tô enganado tenho um exemplo também de como arrastar e soltar de
 fora
 de uma aplicação Delphi para dentro dela, tipo qdo fazemos no Word ou
 Outlook por exemplo. Acho que tenho isso. Se tiver tento adaptar ao que
 precisa blz?

 --
 Adriano Santos
 http://twitter.com/asrsantos
 www.delphitodelphi.blogspot.com

 2010/6/16 Roni Rodrigo ronirodr...@yahoo.com.brronirodrigo%40yahoo.com.br
 

 
 
  aahh..
  qto ao icone circular do listbox... verifica a propriedade DragMode..
  não lembro qual tem que ser, acho q é dmAutomatic.. mas enfim, da uma
  testada ai... hehe
  o/
 
  Em 16/06/2010 13:05, Roni Rodrigo escreveu:
 
   mas então cara... aquele exemplo ta bem mastigado...
   (
 

 http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-s
 ua-aplica%C3%A7%C3%A3o
  )
   O listbox vc ja tem no form né?
   a seção private está na declaração do teu form, lá onde tem: Form1 =
   class(TForm) etc após as declarações dos seus componentes tem a
   palara reservada PRIVATE. Logo abaixo dela vc coloca essa linha:
   procedure WMDropFiles(var Msg: TMessage); message wm_DropFiles;
   isso vai interceptar as mensagens de arrasto (Drag end drop) do
 windows..
   aí vc vai nos eventos OnCreate e OnDestroy do form
   No Create:
   DragAcceptFiles(Handle, true);
   isso diz que seu aplicativo vai aceitar que algo seja arrastado sobre
 ele
   no Destroy:
   DragAcceptFiles(Handle, false);
   isso desativa o arrasto
  
   ai vc só precisa dizer o que fazer quando arrastar os arquivos no seu
   form, no seu caso, adicioná-los ao listbox...
   o código está bem comentado, acho que da pra entender fácil...
   se não der certo procura outra rotina no google.. tem várias... mas não
   acredito que tenha maneira mais simples que essa
  
   procedure TForm1.WMDropFiles(var Msg: TMessage);
   var
   I, FileCount, BufferSize: word;
   Drop: HDROP;
   FileName: string;
   Pt: TPoint;
   RctListBox, RctMemo: TRect;
   begin
   { Pega o manipulador (handle) da operação
   arrastar e soltar (drag-and-drop) }
   Drop := Msg.wParam;
  
   { Pega a quantidade de arquivos soltos (dropped) }
   FileCount := DragQueryFile(Drop, $, nil, 0);
  
   { Se nenhum arquivo... }
   if FileCount = 0 then begin
   ShowMessage('Nenhum arquivo.');
   Exit;
   end;
  
   { Pega o retângulo do ListBox }
   RctListBox := ListBox1.BoundsRect;
  
   { Pega o retângulo do Memo }
   RctMemo := Memo1.BoundsRect;
  
   { Se soltou fora da área cliente do form... }
   if not DragQueryPoint(Drop, Pt) then
   ShowMessage('Arquivos soltos fora da área cliente do form')
   { Se soltou na área do ListBox... }
   else if PtInRect(RctListBox, Pt) then begin
   { Pega todos os nomes de arquivos e coloca no ListBox }
   for I := 0

Re: Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-18 Por tôpico Adriano Santos
Ahhh muleque, adoro isso.

Consegui, mas não posso me vangloriar pq não fui eu quem fez o código, mas
sei que funciona. O crédito todo vai para o Torry's Page o autor desse post:

http://www.swissdelphicenter.ch/torry/showcode.php?id=493

Meu, funciona perfeitamente. Faça o teste e viva a vida.

Como dizem o Walter e o Rubem:
Quem procura, acha.

-- 
Adriano Santos
http://twitter.com/asrsantos
www.delphitodelphi.blogspot.com




2010/6/18 Adriano Santos asrsan...@gmail.com

 Pessoal,

 Nem publiquei o drag-and-drop ontem pq a solução que tem no meu exemplo é
 bem simples, olhem só:

 procedure TForm1.ListaOrigemDragDrop(Sender, Source: TObject; X, Y:
 Integer);
 begin
   if (Source = ListaOrigem) or (Source = ListaDestino) then
 TListBox(Sender).EndDrag(True);
 end;

 procedure TForm1.ListaOrigemDragOver(Sender, Source: TObject; X, Y:
 Integer;
   State: TDragState; var Accept: Boolean);
 begin
   if (Source = ListaOrigem) or (Source = ListaDestino) then
 Accept := True
 end;

 procedure TForm1.ListaOrigemEndDrag(Sender, Target: TObject; X, Y:
 Integer);
 begin
   if Target  nil then
 // trata o fim de uma operacao que foi aceita
 TListbox(Sender).MoveSelection(TListBox(Target){ListaDestino});
 end;

 procedure TForm1.ListaOrigemMouseDown(Sender: TObject; Button:
 TMouseButton;
   Shift: TShiftState; X, Y: Integer);
 begin
   if (Button = mbLeft) and ((Sender = ListaOrigem) or (Sender =
 ListaDestino)) then
 TListBox(Sender).BeginDrag(False) // inicia a operacao
 end;


 Aqui estou fazendo o drag-and-grop de um ListBox para outro.

 Olhei o código do link que passaram e aparentemente tá um xuxu beleza, mas
 não funciona. Tô dando uma olhada pra ver se consigo descobrir o problema.


 http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-sua-aplica%C3%A7%C3%A3o



 --
 Adriano Santos
 http://twitter.com/asrsantos
 www.delphitodelphi.blogspot.com


 2010/6/17 Vitor Yahoo vredesredsys...@yahoo.com.br



 Entrando de gaiato na história aí...
 Não seria mais simples utilizar aqueles componentes da Win 31? Coloca os
 componentes na tela, inclusive o fileslistbox (ou o nome que seja) e
 trabalha com os arquivos pelo index desse componente. Se o caso é só
 renomear...

 -Mensagem original-
 De: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br[mailto:
 delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br] Em
 nome de Adriano Santos
 Enviada em: quinta-feira, 17 de junho de 2010 15:44

 Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
 Assunto: Re: Res: Res: [delphi-br] Arrastando arquivos do windows para
 dentro de um listbox

 Beleza,

 Meu, vou publicar no blog hoje a noite do meu drag-and-drop, não sei se
 vai ajudar.

 Se não tô enganado tenho um exemplo também de como arrastar e soltar de
 fora
 de uma aplicação Delphi para dentro dela, tipo qdo fazemos no Word ou
 Outlook por exemplo. Acho que tenho isso. Se tiver tento adaptar ao que
 precisa blz?

 --
 Adriano Santos
 http://twitter.com/asrsantos
 www.delphitodelphi.blogspot.com

 2010/6/16 Roni Rodrigo ronirodr...@yahoo.com.brronirodrigo%40yahoo.com.br
 

 
 
  aahh..
  qto ao icone circular do listbox... verifica a propriedade DragMode..
  não lembro qual tem que ser, acho q é dmAutomatic.. mas enfim, da uma
  testada ai... hehe
  o/
 
  Em 16/06/2010 13:05, Roni Rodrigo escreveu:
 
   mas então cara... aquele exemplo ta bem mastigado...
   (
 

 http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-s
 ua-aplica%C3%A7%C3%A3o
  )
   O listbox vc ja tem no form né?
   a seção private está na declaração do teu form, lá onde tem: Form1 =
   class(TForm) etc após as declarações dos seus componentes tem a
   palara reservada PRIVATE. Logo abaixo dela vc coloca essa linha:
   procedure WMDropFiles(var Msg: TMessage); message wm_DropFiles;
   isso vai interceptar as mensagens de arrasto (Drag end drop) do
 windows..
   aí vc vai nos eventos OnCreate e OnDestroy do form
   No Create:
   DragAcceptFiles(Handle, true);
   isso diz que seu aplicativo vai aceitar que algo seja arrastado sobre
 ele
   no Destroy:
   DragAcceptFiles(Handle, false);
   isso desativa o arrasto
  
   ai vc só precisa dizer o que fazer quando arrastar os arquivos no seu
   form, no seu caso, adicioná-los ao listbox...
   o código está bem comentado, acho que da pra entender fácil...
   se não der certo procura outra rotina no google.. tem várias... mas
 não
   acredito que tenha maneira mais simples que essa
  
   procedure TForm1.WMDropFiles(var Msg: TMessage);
   var
   I, FileCount, BufferSize: word;
   Drop: HDROP;
   FileName: string;
   Pt: TPoint;
   RctListBox, RctMemo: TRect;
   begin
   { Pega o manipulador (handle) da operação
   arrastar e soltar (drag-and-drop) }
   Drop := Msg.wParam;
  
   { Pega a quantidade de arquivos soltos (dropped) }
   FileCount := DragQueryFile(Drop, $, nil, 0);
  
   { Se nenhum arquivo... }
   if FileCount = 0

Re: Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-18 Por tôpico Adriano Santos
Quem quiser dar uma olhada melhor no primeiro exemplo que passei, tem um
link de um post antigo meu.

http://www.devmedia.com.br/articles/post-2227-Tecnicas-de-drag-and-drop.html

Adriano

2010/6/18 Adriano Santos asrsan...@gmail.com

 Ahhh muleque, adoro isso.

 Consegui, mas não posso me vangloriar pq não fui eu quem fez o código, mas
 sei que funciona. O crédito todo vai para o Torry's Page o autor desse post:

 http://www.swissdelphicenter.ch/torry/showcode.php?id=493

 Meu, funciona perfeitamente. Faça o teste e viva a vida.

 Como dizem o Walter e o Rubem:
 Quem procura, acha.


 --
 Adriano Santos
 http://twitter.com/asrsantos
 www.delphitodelphi.blogspot.com




 2010/6/18 Adriano Santos asrsan...@gmail.com

 Pessoal,

 Nem publiquei o drag-and-drop ontem pq a solução que tem no meu exemplo é
 bem simples, olhem só:

 procedure TForm1.ListaOrigemDragDrop(Sender, Source: TObject; X, Y:
 Integer);
 begin
   if (Source = ListaOrigem) or (Source = ListaDestino) then
 TListBox(Sender).EndDrag(True);
 end;

 procedure TForm1.ListaOrigemDragOver(Sender, Source: TObject; X, Y:
 Integer;
   State: TDragState; var Accept: Boolean);
 begin
   if (Source = ListaOrigem) or (Source = ListaDestino) then
 Accept := True
 end;

 procedure TForm1.ListaOrigemEndDrag(Sender, Target: TObject; X, Y:
 Integer);
 begin
   if Target  nil then
 // trata o fim de uma operacao que foi aceita
 TListbox(Sender).MoveSelection(TListBox(Target){ListaDestino});
 end;

 procedure TForm1.ListaOrigemMouseDown(Sender: TObject; Button:
 TMouseButton;
   Shift: TShiftState; X, Y: Integer);
 begin
   if (Button = mbLeft) and ((Sender = ListaOrigem) or (Sender =
 ListaDestino)) then
 TListBox(Sender).BeginDrag(False) // inicia a operacao
 end;


 Aqui estou fazendo o drag-and-grop de um ListBox para outro.

 Olhei o código do link que passaram e aparentemente tá um xuxu beleza, mas
 não funciona. Tô dando uma olhada pra ver se consigo descobrir o problema.


 http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-sua-aplica%C3%A7%C3%A3o



 --
 Adriano Santos
 http://twitter.com/asrsantos
 www.delphitodelphi.blogspot.com


 2010/6/17 Vitor Yahoo vredesredsys...@yahoo.com.br



 Entrando de gaiato na história aí...
 Não seria mais simples utilizar aqueles componentes da Win 31? Coloca os
 componentes na tela, inclusive o fileslistbox (ou o nome que seja) e
 trabalha com os arquivos pelo index desse componente. Se o caso é só
 renomear...

 -Mensagem original-
 De: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br[mailto:
 delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br] Em
 nome de Adriano Santos
 Enviada em: quinta-feira, 17 de junho de 2010 15:44

 Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
 Assunto: Re: Res: Res: [delphi-br] Arrastando arquivos do windows para
 dentro de um listbox

 Beleza,

 Meu, vou publicar no blog hoje a noite do meu drag-and-drop, não sei se
 vai ajudar.

 Se não tô enganado tenho um exemplo também de como arrastar e soltar de
 fora
 de uma aplicação Delphi para dentro dela, tipo qdo fazemos no Word ou
 Outlook por exemplo. Acho que tenho isso. Se tiver tento adaptar ao que
 precisa blz?

 --
 Adriano Santos
 http://twitter.com/asrsantos
 www.delphitodelphi.blogspot.com

 2010/6/16 Roni Rodrigo ronirodr...@yahoo.com.brronirodrigo%40yahoo.com.br
 

 
 
  aahh..
  qto ao icone circular do listbox... verifica a propriedade DragMode..
  não lembro qual tem que ser, acho q é dmAutomatic.. mas enfim, da uma
  testada ai... hehe
  o/
 
  Em 16/06/2010 13:05, Roni Rodrigo escreveu:
 
   mas então cara... aquele exemplo ta bem mastigado...
   (
 

 http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-s
 ua-aplica%C3%A7%C3%A3o
  )
   O listbox vc ja tem no form né?
   a seção private está na declaração do teu form, lá onde tem: Form1 =
   class(TForm) etc após as declarações dos seus componentes tem a
   palara reservada PRIVATE. Logo abaixo dela vc coloca essa linha:
   procedure WMDropFiles(var Msg: TMessage); message wm_DropFiles;
   isso vai interceptar as mensagens de arrasto (Drag end drop) do
 windows..
   aí vc vai nos eventos OnCreate e OnDestroy do form
   No Create:
   DragAcceptFiles(Handle, true);
   isso diz que seu aplicativo vai aceitar que algo seja arrastado sobre
 ele
   no Destroy:
   DragAcceptFiles(Handle, false);
   isso desativa o arrasto
  
   ai vc só precisa dizer o que fazer quando arrastar os arquivos no seu
   form, no seu caso, adicioná-los ao listbox...
   o código está bem comentado, acho que da pra entender fácil...
   se não der certo procura outra rotina no google.. tem várias... mas
 não
   acredito que tenha maneira mais simples que essa
  
   procedure TForm1.WMDropFiles(var Msg: TMessage);
   var
   I, FileCount, BufferSize: word;
   Drop: HDROP;
   FileName: string;
   Pt: TPoint;
   RctListBox, RctMemo: TRect;
   begin
   { Pega o manipulador

Re: Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-17 Por tôpico Adriano Santos
Beleza,

Meu, vou publicar no blog hoje a noite do meu drag-and-drop, não sei se
vai ajudar.

Se não tô enganado tenho um exemplo também de como arrastar e soltar de fora
de uma aplicação Delphi para dentro dela, tipo qdo fazemos no Word ou
Outlook por exemplo. Acho que tenho isso. Se tiver tento adaptar ao que
precisa blz?

-- 
Adriano Santos
http://twitter.com/asrsantos
www.delphitodelphi.blogspot.com


2010/6/16 Roni Rodrigo ronirodr...@yahoo.com.br



 aahh..
 qto ao icone circular do listbox... verifica a propriedade DragMode..
 não lembro qual tem que ser, acho q é dmAutomatic.. mas enfim, da uma
 testada ai... hehe
 o/

 Em 16/06/2010 13:05, Roni Rodrigo escreveu:

  mas então cara... aquele exemplo ta bem mastigado...
  (
 http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-sua-aplica%C3%A7%C3%A3o
 )
  O listbox vc ja tem no form né?
  a seção private está na declaração do teu form, lá onde tem: Form1 =
  class(TForm) etc após as declarações dos seus componentes tem a
  palara reservada PRIVATE. Logo abaixo dela vc coloca essa linha:
  procedure WMDropFiles(var Msg: TMessage); message wm_DropFiles;
  isso vai interceptar as mensagens de arrasto (Drag end drop) do windows..
  aí vc vai nos eventos OnCreate e OnDestroy do form
  No Create:
  DragAcceptFiles(Handle, true);
  isso diz que seu aplicativo vai aceitar que algo seja arrastado sobre ele
  no Destroy:
  DragAcceptFiles(Handle, false);
  isso desativa o arrasto
 
  ai vc só precisa dizer o que fazer quando arrastar os arquivos no seu
  form, no seu caso, adicioná-los ao listbox...
  o código está bem comentado, acho que da pra entender fácil...
  se não der certo procura outra rotina no google.. tem várias... mas não
  acredito que tenha maneira mais simples que essa
 
  procedure TForm1.WMDropFiles(var Msg: TMessage);
  var
  I, FileCount, BufferSize: word;
  Drop: HDROP;
  FileName: string;
  Pt: TPoint;
  RctListBox, RctMemo: TRect;
  begin
  { Pega o manipulador (handle) da operação
  arrastar e soltar (drag-and-drop) }
  Drop := Msg.wParam;
 
  { Pega a quantidade de arquivos soltos (dropped) }
  FileCount := DragQueryFile(Drop, $, nil, 0);
 
  { Se nenhum arquivo... }
  if FileCount = 0 then begin
  ShowMessage('Nenhum arquivo.');
  Exit;
  end;
 
  { Pega o retângulo do ListBox }
  RctListBox := ListBox1.BoundsRect;
 
  { Pega o retângulo do Memo }
  RctMemo := Memo1.BoundsRect;
 
  { Se soltou fora da área cliente do form... }
  if not DragQueryPoint(Drop, Pt) then
  ShowMessage('Arquivos soltos fora da área cliente do form')
  { Se soltou na área do ListBox... }
  else if PtInRect(RctListBox, Pt) then begin
  { Pega todos os nomes de arquivos e coloca no ListBox }
  for I := 0 to FileCount -1 do begin
  { Obtém o comprimento necessário para o nome do arquivo,
  sem contar o caractere nulo do fim da string. }
  BufferSize := DragQueryFile(Drop, I, nil, 0);
  SetLength(FileName, BufferSize +1); { O +1 é p/ nulo do fim da string }
  if DragQueryFile(Drop, I, PChar(FileName), BufferSize+1) = BufferSize
 then
  ListBox1.Items.Add(string(PChar(FileName)))
  else
  ShowMessage('Erro ao obter nome do arquivo.');
  end;
  { Se soltou na área do Memo... }
  end else if PtInRect(RctMemo, Pt) then begin
  if FileCount  1 then
  ShowMessage('Será mostrado apenas o conteúdo do primeiro arquivo.');
 
  { Obtém o comprimento necessário para o nome do arquivo,
  sem contar o caractere nulo do fim da string.
  O segundo parâmetro (zero) indica o primeiro arquivo da lista }
  BufferSize := DragQueryFile(Drop, 0, nil, 0);
  SetLength(FileName, BufferSize +1); { O +1 é p/ nulo do fim da string }
  if DragQueryFile(Drop, 0, PChar(FileName), BufferSize+1) = BufferSize
 then
  Memo1.Lines.LoadFromFile(string(PChar(FileName)))
  else
  ShowMessage('Erro ao obter nome do arquivo.');
  end;
 
  Msg.Result := 0;
 
  end;
 
  Em 14/06/2010 20:01, Andre Luiz Stivanatto escreveu:
   então meu listbox ja esta com essa opção abilitada :
   AllowMultiSelect pra
   permitir selecionar múltiplos arquivos
  
   é que para abrir 4.783 arquivos que tenho no pc demora muito tempo,
   porisso preciso de arrrastar os arquivos para dentro do listbox é
   muito mais facil fazer isso, pois eu abro a pasta que tem os 4.783
   arquivos, vou em editar e mando selecionar tudo de uma vez depois, é
   so aeu arrastar tudo para dentro do listbox.
   não preciso de ter o memo, so quero o listbox mesmo, e esse codigo é
   estranho pois não sei qual é a area privada da unit do form1 ?
   preciso de um codigo mais simples que interage com o listbox, so
   preciso que o listbox aceite os arquivos em modo arrastar, pois quando
   tento fazer isso o cursor do mouse aparece o icone circular de negação.
   você poderia me ver um exemplo mais pratico, ou montar o codigo ai e
   me mandar, pois estou tentando e não estou conseguindo fazer esse
   codigo, talvez você consigua pois se deve ter mais experiencia do
  que eu.
   eu aprendi programação 

RES: Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-17 Por tôpico Vitor Yahoo
Entrando de gaiato na história aí...
Não seria mais simples utilizar aqueles componentes da Win 31? Coloca os
componentes na tela, inclusive o fileslistbox (ou o nome que seja) e
trabalha com os arquivos pelo index desse componente. Se o caso é só
renomear... 

-Mensagem original-
De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Adriano Santos
Enviada em: quinta-feira, 17 de junho de 2010 15:44
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: Res: Res: [delphi-br] Arrastando arquivos do windows para
dentro de um listbox

Beleza,

Meu, vou publicar no blog hoje a noite do meu drag-and-drop, não sei se
vai ajudar.

Se não tô enganado tenho um exemplo também de como arrastar e soltar de fora
de uma aplicação Delphi para dentro dela, tipo qdo fazemos no Word ou
Outlook por exemplo. Acho que tenho isso. Se tiver tento adaptar ao que
precisa blz?

-- 
Adriano Santos
http://twitter.com/asrsantos
www.delphitodelphi.blogspot.com


2010/6/16 Roni Rodrigo ronirodr...@yahoo.com.br



 aahh..
 qto ao icone circular do listbox... verifica a propriedade DragMode..
 não lembro qual tem que ser, acho q é dmAutomatic.. mas enfim, da uma
 testada ai... hehe
 o/

 Em 16/06/2010 13:05, Roni Rodrigo escreveu:

  mas então cara... aquele exemplo ta bem mastigado...
  (

http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-s
ua-aplica%C3%A7%C3%A3o
 )
  O listbox vc ja tem no form né?
  a seção private está na declaração do teu form, lá onde tem: Form1 =
  class(TForm) etc após as declarações dos seus componentes tem a
  palara reservada PRIVATE. Logo abaixo dela vc coloca essa linha:
  procedure WMDropFiles(var Msg: TMessage); message wm_DropFiles;
  isso vai interceptar as mensagens de arrasto (Drag end drop) do
windows..
  aí vc vai nos eventos OnCreate e OnDestroy do form
  No Create:
  DragAcceptFiles(Handle, true);
  isso diz que seu aplicativo vai aceitar que algo seja arrastado sobre
ele
  no Destroy:
  DragAcceptFiles(Handle, false);
  isso desativa o arrasto
 
  ai vc só precisa dizer o que fazer quando arrastar os arquivos no seu
  form, no seu caso, adicioná-los ao listbox...
  o código está bem comentado, acho que da pra entender fácil...
  se não der certo procura outra rotina no google.. tem várias... mas não
  acredito que tenha maneira mais simples que essa
 
  procedure TForm1.WMDropFiles(var Msg: TMessage);
  var
  I, FileCount, BufferSize: word;
  Drop: HDROP;
  FileName: string;
  Pt: TPoint;
  RctListBox, RctMemo: TRect;
  begin
  { Pega o manipulador (handle) da operação
  arrastar e soltar (drag-and-drop) }
  Drop := Msg.wParam;
 
  { Pega a quantidade de arquivos soltos (dropped) }
  FileCount := DragQueryFile(Drop, $, nil, 0);
 
  { Se nenhum arquivo... }
  if FileCount = 0 then begin
  ShowMessage('Nenhum arquivo.');
  Exit;
  end;
 
  { Pega o retângulo do ListBox }
  RctListBox := ListBox1.BoundsRect;
 
  { Pega o retângulo do Memo }
  RctMemo := Memo1.BoundsRect;
 
  { Se soltou fora da área cliente do form... }
  if not DragQueryPoint(Drop, Pt) then
  ShowMessage('Arquivos soltos fora da área cliente do form')
  { Se soltou na área do ListBox... }
  else if PtInRect(RctListBox, Pt) then begin
  { Pega todos os nomes de arquivos e coloca no ListBox }
  for I := 0 to FileCount -1 do begin
  { Obtém o comprimento necessário para o nome do arquivo,
  sem contar o caractere nulo do fim da string. }
  BufferSize := DragQueryFile(Drop, I, nil, 0);
  SetLength(FileName, BufferSize +1); { O +1 é p/ nulo do fim da string }
  if DragQueryFile(Drop, I, PChar(FileName), BufferSize+1) = BufferSize
 then
  ListBox1.Items.Add(string(PChar(FileName)))
  else
  ShowMessage('Erro ao obter nome do arquivo.');
  end;
  { Se soltou na área do Memo... }
  end else if PtInRect(RctMemo, Pt) then begin
  if FileCount  1 then
  ShowMessage('Será mostrado apenas o conteúdo do primeiro arquivo.');
 
  { Obtém o comprimento necessário para o nome do arquivo,
  sem contar o caractere nulo do fim da string.
  O segundo parâmetro (zero) indica o primeiro arquivo da lista }
  BufferSize := DragQueryFile(Drop, 0, nil, 0);
  SetLength(FileName, BufferSize +1); { O +1 é p/ nulo do fim da string }
  if DragQueryFile(Drop, 0, PChar(FileName), BufferSize+1) = BufferSize
 then
  Memo1.Lines.LoadFromFile(string(PChar(FileName)))
  else
  ShowMessage('Erro ao obter nome do arquivo.');
  end;
 
  Msg.Result := 0;
 
  end;
 
  Em 14/06/2010 20:01, Andre Luiz Stivanatto escreveu:
   então meu listbox ja esta com essa opção abilitada :
   AllowMultiSelect pra
   permitir selecionar múltiplos arquivos
  
   é que para abrir 4.783 arquivos que tenho no pc demora muito tempo,
   porisso preciso de arrrastar os arquivos para dentro do listbox é
   muito mais facil fazer isso, pois eu abro a pasta que tem os 4.783
   arquivos, vou em editar e mando selecionar tudo de uma vez depois, é
   so aeu arrastar tudo para dentro do listbox.
   não preciso de ter o memo, so

Re: Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-16 Por tôpico Roni Rodrigo
mas então cara... aquele exemplo ta bem mastigado...
(http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-sua-aplica%C3%A7%C3%A3o)
O listbox vc ja tem no form né?
a seção private está na declaração do teu form, lá onde tem: Form1 = 
class(TForm) etc após as declarações dos seus componentes tem a 
palara reservada PRIVATE. Logo abaixo dela vc coloca essa linha:
procedure WMDropFiles(var Msg: TMessage); message wm_DropFiles;
isso vai interceptar as mensagens de arrasto (Drag end drop)  do windows..
aí vc vai nos eventos OnCreate e OnDestroy do form
No Create:
   DragAcceptFiles(Handle, true);
isso diz que seu aplicativo vai aceitar que algo seja arrastado sobre ele
no Destroy:
   DragAcceptFiles(Handle, false);
isso desativa o arrasto

ai vc só precisa dizer o que fazer quando arrastar os arquivos no seu 
form, no seu caso, adicioná-los ao listbox...
o código está bem comentado, acho que da pra entender fácil...
se não der certo procura outra rotina no google.. tem várias... mas não 
acredito que tenha maneira mais simples que essa

procedure TForm1.WMDropFiles(var Msg: TMessage);
var
   I, FileCount, BufferSize: word;
   Drop: HDROP;
   FileName: string;
   Pt: TPoint;
   RctListBox, RctMemo: TRect;
begin
{ Pega o manipulador (handle) da operação
 arrastar e soltar (drag-and-drop) }
   Drop := Msg.wParam;

{ Pega a quantidade de arquivos soltos (dropped) }
   FileCount := DragQueryFile(Drop, $, nil, 0);

{ Se nenhum arquivo... }
if FileCount = 0 then begin
 ShowMessage('Nenhum arquivo.');
Exit;
end;

{ Pega o retângulo do ListBox }
   RctListBox := ListBox1.BoundsRect;

{ Pega o retângulo do Memo }
   RctMemo := Memo1.BoundsRect;

{ Se soltou fora da área cliente do form... }
if not DragQueryPoint(Drop, Pt) then
 ShowMessage('Arquivos soltos fora da área cliente do form')
{ Se soltou na área do ListBox... }
else if PtInRect(RctListBox, Pt) then begin
{ Pega todos os nomes de arquivos e coloca no ListBox }
for I := 0 to FileCount -1 do begin
{ Obtém o comprimento necessário para o nome do arquivo,
 sem contar o caractere nulo do fim da string. }
   BufferSize := DragQueryFile(Drop, I, nil, 0);
SetLength(FileName, BufferSize +1); { O +1 é p/ nulo do fim da string }
if DragQueryFile(Drop, I, PChar(FileName), BufferSize+1) = BufferSize then
 ListBox1.Items.Add(string(PChar(FileName)))
else
 ShowMessage('Erro ao obter nome do arquivo.');
end;
{ Se soltou na área do Memo... }
end else if PtInRect(RctMemo, Pt) then begin
if FileCount  1 then
   ShowMessage('Será mostrado apenas o conteúdo do primeiro arquivo.');

{ Obtém o comprimento necessário para o nome do arquivo,
   sem contar o caractere nulo do fim da string.
   O segundo parâmetro (zero) indica o primeiro arquivo da lista }
 BufferSize := DragQueryFile(Drop, 0, nil, 0);
SetLength(FileName, BufferSize +1); { O +1 é p/ nulo do fim da string }
if DragQueryFile(Drop, 0, PChar(FileName), BufferSize+1) = BufferSize then
   Memo1.Lines.LoadFromFile(string(PChar(FileName)))
else
   ShowMessage('Erro ao obter nome do arquivo.');
end;

   Msg.Result := 0;

end;




Em 14/06/2010 20:01, Andre Luiz Stivanatto escreveu:
 então meu listbox ja esta com essa opção abilitada :
 AllowMultiSelect pra
 permitir selecionar múltiplos arquivos

 é que para abrir 4.783 arquivos que tenho no pc demora muito tempo, 
 porisso preciso de arrrastar os arquivos para dentro do listbox é 
 muito mais facil fazer isso, pois eu abro a pasta que tem os 4.783 
 arquivos, vou em editar e mando selecionar tudo de uma vez depois, é 
 so aeu arrastar tudo para dentro do listbox.
 não preciso de ter o memo, so quero o listbox mesmo, e esse codigo é 
 estranho pois não sei qual é a area privada da unit do form1 ?
 preciso de um codigo mais simples que interage com o listbox, so 
 preciso que o listbox aceite os arquivos em modo arrastar, pois quando 
 tento fazer isso o cursor do mouse aparece o icone circular de negação.
 você poderia me ver um exemplo mais pratico, ou montar o codigo ai e 
 me mandar, pois estou tentando e não estou conseguindo fazer esse 
 codigo, talvez você consigua pois se deve ter mais experiencia do que eu.
 eu aprendi programação em delphi pois fiz o colegial + processamento 
 de dados no opção no ano de 2000 que comecei, so que em 2002 cortaram 
 isso do plano das escolas , foi no terceiro ano, portanto esta 
 incompleto meus estudos, mas estou indo pesquisando e vendo exemplos.
 so que isso que eu quero fazer num programa que renomeia extenções dos 
 arquivos ja consegui fazer, so falta isso para facilitar a minha vida, 
 pois pelo opendialog fica a vida toda para selecionar tudo, se eu 
 conseguir fazer o lisbox permitir o arrastar e soltar então fica muito 
 mais facil.
 obrigado pela ajuda, mas se der para você me dar uma ajuda com um 
 codigo que interaja sem ter outros componentes dentro do projeto como 
 o memo, so quero o codigo que se interaja com o 

Re: Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-16 Por tôpico Roni Rodrigo
aahh..
qto ao icone circular do listbox... verifica a propriedade DragMode.. 
não lembro qual tem que ser, acho q é dmAutomatic.. mas enfim, da uma 
testada ai... hehe
o/

Em 16/06/2010 13:05, Roni Rodrigo escreveu:
 mas então cara... aquele exemplo ta bem mastigado...
 (http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-sua-aplica%C3%A7%C3%A3o)
 O listbox vc ja tem no form né?
 a seção private está na declaração do teu form, lá onde tem: Form1 =
 class(TForm) etc após as declarações dos seus componentes tem a
 palara reservada PRIVATE. Logo abaixo dela vc coloca essa linha:
 procedure WMDropFiles(var Msg: TMessage); message wm_DropFiles;
 isso vai interceptar as mensagens de arrasto (Drag end drop) do windows..
 aí vc vai nos eventos OnCreate e OnDestroy do form
 No Create:
 DragAcceptFiles(Handle, true);
 isso diz que seu aplicativo vai aceitar que algo seja arrastado sobre ele
 no Destroy:
 DragAcceptFiles(Handle, false);
 isso desativa o arrasto

 ai vc só precisa dizer o que fazer quando arrastar os arquivos no seu
 form, no seu caso, adicioná-los ao listbox...
 o código está bem comentado, acho que da pra entender fácil...
 se não der certo procura outra rotina no google.. tem várias... mas não
 acredito que tenha maneira mais simples que essa

 procedure TForm1.WMDropFiles(var Msg: TMessage);
 var
 I, FileCount, BufferSize: word;
 Drop: HDROP;
 FileName: string;
 Pt: TPoint;
 RctListBox, RctMemo: TRect;
 begin
 { Pega o manipulador (handle) da operação
 arrastar e soltar (drag-and-drop) }
 Drop := Msg.wParam;

 { Pega a quantidade de arquivos soltos (dropped) }
 FileCount := DragQueryFile(Drop, $, nil, 0);

 { Se nenhum arquivo... }
 if FileCount = 0 then begin
 ShowMessage('Nenhum arquivo.');
 Exit;
 end;

 { Pega o retângulo do ListBox }
 RctListBox := ListBox1.BoundsRect;

 { Pega o retângulo do Memo }
 RctMemo := Memo1.BoundsRect;

 { Se soltou fora da área cliente do form... }
 if not DragQueryPoint(Drop, Pt) then
 ShowMessage('Arquivos soltos fora da área cliente do form')
 { Se soltou na área do ListBox... }
 else if PtInRect(RctListBox, Pt) then begin
 { Pega todos os nomes de arquivos e coloca no ListBox }
 for I := 0 to FileCount -1 do begin
 { Obtém o comprimento necessário para o nome do arquivo,
 sem contar o caractere nulo do fim da string. }
 BufferSize := DragQueryFile(Drop, I, nil, 0);
 SetLength(FileName, BufferSize +1); { O +1 é p/ nulo do fim da string }
 if DragQueryFile(Drop, I, PChar(FileName), BufferSize+1) = BufferSize then
 ListBox1.Items.Add(string(PChar(FileName)))
 else
 ShowMessage('Erro ao obter nome do arquivo.');
 end;
 { Se soltou na área do Memo... }
 end else if PtInRect(RctMemo, Pt) then begin
 if FileCount  1 then
 ShowMessage('Será mostrado apenas o conteúdo do primeiro arquivo.');

 { Obtém o comprimento necessário para o nome do arquivo,
 sem contar o caractere nulo do fim da string.
 O segundo parâmetro (zero) indica o primeiro arquivo da lista }
 BufferSize := DragQueryFile(Drop, 0, nil, 0);
 SetLength(FileName, BufferSize +1); { O +1 é p/ nulo do fim da string }
 if DragQueryFile(Drop, 0, PChar(FileName), BufferSize+1) = BufferSize then
 Memo1.Lines.LoadFromFile(string(PChar(FileName)))
 else
 ShowMessage('Erro ao obter nome do arquivo.');
 end;

 Msg.Result := 0;

 end;

 Em 14/06/2010 20:01, Andre Luiz Stivanatto escreveu:
  então meu listbox ja esta com essa opção abilitada :
  AllowMultiSelect pra
  permitir selecionar múltiplos arquivos
 
  é que para abrir 4.783 arquivos que tenho no pc demora muito tempo,
  porisso preciso de arrrastar os arquivos para dentro do listbox é
  muito mais facil fazer isso, pois eu abro a pasta que tem os 4.783
  arquivos, vou em editar e mando selecionar tudo de uma vez depois, é
  so aeu arrastar tudo para dentro do listbox.
  não preciso de ter o memo, so quero o listbox mesmo, e esse codigo é
  estranho pois não sei qual é a area privada da unit do form1 ?
  preciso de um codigo mais simples que interage com o listbox, so
  preciso que o listbox aceite os arquivos em modo arrastar, pois quando
  tento fazer isso o cursor do mouse aparece o icone circular de negação.
  você poderia me ver um exemplo mais pratico, ou montar o codigo ai e
  me mandar, pois estou tentando e não estou conseguindo fazer esse
  codigo, talvez você consigua pois se deve ter mais experiencia do 
 que eu.
  eu aprendi programação em delphi pois fiz o colegial + processamento
  de dados no opção no ano de 2000 que comecei, so que em 2002 cortaram
  isso do plano das escolas , foi no terceiro ano, portanto esta
  incompleto meus estudos, mas estou indo pesquisando e vendo exemplos.
  so que isso que eu quero fazer num programa que renomeia extenções dos
  arquivos ja consegui fazer, so falta isso para facilitar a minha vida,
  pois pelo opendialog fica a vida toda para selecionar tudo, se eu
  conseguir fazer o lisbox permitir o arrastar e soltar então fica muito
  mais facil.
  obrigado pela 

Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-15 Por tôpico Andre Luiz Stivanatto
então meu listbox ja esta com essa opção abilitada :
AllowMultiSelect pra 
permitir selecionar múltiplos arquivos


 é que para abrir 4.783 arquivos que tenho no pc demora muito tempo, porisso 
preciso de arrrastar os arquivos para dentro do listbox é muito mais facil 
fazer isso, pois eu abro a pasta que tem os 4.783 arquivos, vou em editar e 
mando selecionar tudo de uma vez depois, é so aeu arrastar tudo para dentro do 
listbox.
não preciso de ter o memo, so quero o listbox mesmo, e esse codigo é estranho 
pois não sei qual é a area privada da unit do form1 ?
preciso de um codigo mais simples que interage com o listbox, so preciso que o 
listbox aceite os arquivos em modo arrastar, pois quando tento fazer isso o 
cursor do mouse aparece o icone circular de negação.
você poderia me ver um exemplo mais pratico, ou montar o codigo ai e me mandar, 
pois estou tentando e não estou conseguindo fazer esse codigo, talvez você 
consigua pois se deve ter mais experiencia do que eu.
eu aprendi programação em delphi pois fiz o colegial + processamento de dados 
no opção no ano de 2000 que comecei, so que em 2002 cortaram isso do plano das 
escolas , foi no terceiro ano, portanto esta incompleto meus estudos, mas estou 
indo pesquisando e vendo exemplos.
so que isso que eu quero fazer num programa que renomeia extenções dos arquivos 
ja consegui fazer, so falta isso para facilitar a minha vida, pois pelo 
opendialog fica a vida toda para selecionar tudo, se eu conseguir fazer o 
lisbox permitir o arrastar e soltar então fica muito mais facil.
obrigado pela ajuda, mas se der para você me dar uma ajuda com um codigo que 
interaja sem ter outros componentes dentro do projeto como o memo, so quero o 
codigo que se interaja com o listbox, pois é so ele quem vou usar.

obrigado e agurado retorno de sua resposta.
Andre Luiz





De: Roni Rodrigo ronirodr...@yahoo.com.br
Para: delphi-br@yahoogrupos.com.br
Enviadas: Segunda-feira, 14 de Junho de 2010 19:19:17
Assunto: Re: Res: [delphi-br] Arrastando arquivos do windows para dentro de um  
listbox

   
Olá André... não daria pra habilitar a opção AllowMultiSelect pra 
permitir selecionar múltiplos arquivos? ai vc pode percorrer a lista de 
arquivos selecionados, adicionando-os...
sobre arrastar o arquivo pro form, procurei no google e esse foi um dos 
primeiros...
http://www.planetadelphi.com.br/dica/6768/arrastar-e-soltar-arquivos-sobre-sua-aplica%C3%A7%C3%A3o

não testei mas parece funcionar...

Em 14/06/2010 17:49, Andre Luiz Stivanatto escreveu:
 obrigado Adriano, até agora ninguém respondeu são 17:48 hs, se você me 
 mandar esse exemplo eu te agradeço, muito obrigado por ter me respondido.

 Andre Luiz

 
 De: Adriano Santos asrsan...@gmail.com mailto:asrsantos%40gmail.com
 Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
 Cc: delphi 1 lista-del...@yahoogrupos.com.br 
 mailto:lista-delphi%40yahoogrupos.com.br
 Enviadas: Segunda-feira, 14 de Junho de 2010 10:25:29
 Assunto: Re: [delphi-br] Arrastando arquivos do windows para dentro de 
 um listbox

 André,

 Se ninguém responder seu e-mail até a noite, te passo um exemplo. 
 Tenho isso
 no meu server em home-office. Tenho um exemplo bem legal.

 -- 
 Adriano Santos
 http://twitter.com/asrsantos
 www.delphitodelphi.blogspot.com

 2010/6/12 Andre Luiz Stivanatto andreluiz.stivana...@yahoo.com.br 
 mailto:andreluiz.stivanatto%40yahoo.com.br

 
 
  Oi pessoal tudo bem ?
  Estou com um projeto aqui que estou montando, tenho um form e um 
 listbox1 ,
  ja fiz um botão abrir arquivos com o opendialog1 so que para abrir 4.783
  arquivos no listbox1 não é facil, estava pensando em abrir a pasta 
 dos 4.783
  arquivos, depois mandar selecionar tudo de uma vez e arrastar para 
 dentro do
  listbox que esta dentro do meu projeto, ai os 4.783 arquivos ficaram
  listados no listbox de uma vez, é mais rapido do que lever varios 
 minutos
  selecionando pelo opendialog que demora muito mais, o que eu quero é um
  codigo que permita eu arrastar multiplos arquivos de uma pasta do 
 windows e
  jogar dentro do listbox, como faço esse codigo ?
  obrigado pela atenção de todos !
 
  Andre Luiz
 
  [As partes desta mensagem que não continham texto foram removidas]
 
 
 

 [As partes desta mensagem que não continham texto foram removidas]

[As partes desta mensagem que não continham texto foram removidas]


 


  

[As partes desta mensagem que não continham texto foram removidas]



Res: Res: [delphi-br] Arrastando arquivos do windows para dentro de um listbox

2010-06-15 Por tôpico Andre Luiz Stivanatto
oi Adriano ainda não consegui resolver não, se pode me mandar seu codigo de 
exemplo ?

obrigado pela atenção ! 
Andre Luiz





De: Adriano Santos asrsan...@gmail.com
Para: delphi-br@yahoogrupos.com.br delphi-br@yahoogrupos.com.br
Cc: delphi-br@yahoogrupos.com.br delphi-br@yahoogrupos.com.br
Enviadas: Terça-feira, 15 de Junho de 2010 9:20:10
Assunto: Re: Res: [delphi-br] Arrastando arquivos do windows para dentro de um  
listbox

   
Opa,

Cheguei super tarde em casa. Emergência no serviço. Vi que a galera 
respondeu. Conseguiu resolver?

Abs

Adriano Santos
+55 (11)8219-5420
http://twitter.com/asrsantos
Enviado de meu iPhone

Em 14/06/2010, às 17:49, Andre Luiz Stivanatto 
andreluiz.stivana...@yahoo.com.b 
r escreveu:

 obrigado Adriano, até agora ninguém respondeu são 17:48 hs, se 
 você me mandar esse exemplo eu te agradeço, muito obrigado por ter m 
 e respondido.

 Andre Luiz

 
 De: Adriano Santos asrsan...@gmail.com
 Para: delphi-br@yahoogrupos.com.br
 Cc: delphi 1 lista-del...@yahoogrupos.com.br
 Enviadas: Segunda-feira, 14 de Junho de 2010 10:25:29
 Assunto: Re: [delphi-br] Arrastando arquivos do windows para dentro 
 de um  listbox

 André,

 Se ninguém responder seu e-mail até a noite, te passo um exemplo. Te 
 nho isso
 no meu server em home-office. Tenho um exemplo bem legal.

 -- 
 Adriano Santos
 http://twitter.com/asrsantos
 www.delphitodelphi.blogspot.com

 2010/6/12 Andre Luiz Stivanatto andreluiz.stivana...@yahoo.com.br

 
 
  Oi pessoal tudo bem ?
  Estou com um projeto aqui que estou montando, tenho um form e um 
 listbox1 ,
  ja fiz um botão abrir arquivos com o opendialog1 so que para abrir 
  4.783
  arquivos no listbox1 não é facil, estava pensando em abrir a pasta 
  dos 4.783
  arquivos, depois mandar selecionar tudo de uma vez e arrastar para 
 dentro do
  listbox que esta dentro do meu projeto, ai os 4.783 arquivos ficaram
  listados no listbox de uma vez, é mais rapido do que lever varios 
 minutos
  selecionando pelo opendialog que demora muito mais, o que eu quero 
  é um
  codigo que permita eu arrastar multiplos arquivos de uma pasta do 
 windows e
  jogar dentro do listbox, como faço esse codigo ?
  obrigado pela atenção de todos !
 
  Andre Luiz
 
  [As partes desta mensagem que não continham texto foram removidas]
 
 
 

 [As partes desta mensagem que não continham texto foram removidas]

 

 -- 
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

 [As partes desta mensagem que não continham texto foram removidas]

 

[As partes desta mensagem que não continham texto foram removidas]


 


  

[As partes desta mensagem que não continham texto foram removidas]