|
Usuários |
|
146 Usuários Online
|
|
[Dicas]
Drag and Drop com ListView |
Publicado por rboaro : Quarta, Fevereiro 01, 2012 - 04:55 GMT-3 (870 leituras)
5 Comentários Enviar para um amigo Versão para impressão
|
Primeiro inclua em seu formulário dois TListView e preencha a propriedades DragMode com o valor dmAutomatic nos dois. Para facilitar nossas vidas, vamos criar um método genérico para realizar o drag and drop, com o seguinte código procedure realizarDragAndDrop(Sender: TObject; Source: TObject);
var
itemAdicionado : TListItem;
Item : string;
itAdd : TListItem;
begin
if Source <> Sender then
begin
with (Source as TListview) do
begin
Item := Items[ItemIndex].Caption;
Items.Delete(ItemIndex);
itAdd := items[ItemIndex];
end;
itemAdicionado := (Sender as TListView).Items.AddItem(itAdd, 1);
itemAdicionado.Caption := item;
end;
end;
Agora, vamos partir do ponto que nossos listView só aceitam drag and drop de componentes listView, para isso, no evento onDragOver de cada listView vamos colocar o seguinte código
Accept := (Source is TListView);
Para finalizar, vamos fazer a chamada do método que realiza o drag and drop efetivamente. No evento onDragDrop de cada listView, basta fazer a chamada do nosso método realizarDragAndDrop da seguinte maneira
realizarDragAndDrop(Sender, Source);
Vale ressaltar que os parâmetros Sender e Source são parâmetros de entrada do evento onDragDrop de um listView que definem a origem e o destino do item que está sendo manipulado com o drag and drop.
Abraços
Diego Garcia
|
|
Comentários | |
| | Comentários pertencem aos seus respectivos autores. Não somos responsáveis pelo seus conteúdos. |
por: gnandi83 (papaicleber@hotmail.com)
: Fev 02, 2012 - 09:37 (Informações sobre o membro | Enviar uma mensagem)
http://http://
|
Fiz aqui..
Coloquei os dois listview com todos os comandos que disseste aqui, e qdo compilei, nao apareceu nada..
precisa fazer algo mais, ou só solocar os listview vazio e pronto, tem que fazer alguma ligação?
|
|
|
Edição 112 |
|
|
50 Programas Fontes |
|
|
Produtos |
|
|