PDA

Ver la Versión Completa : Drag&Drop !!!


rafstyle
21-05-2003, 05:23:57
Hola! Si habéis andado por el chat ya habréis notado lo pesao que soy con lo del DragDrop! Si alguien dispone de un par de minutillos le pediría que me paste un ejemplete de , p.ej., cómo abrir un fichero de texto en un Memo arrastrandolo desde, p.ej., el escritorio.

Gracias.

__cadetill
21-05-2003, 11:39:14
para utilizar el Drag&Drop, yo te aconsejo que te instales los componentes Drag&Drop que puedes encontrar en la Comunity o en mi web en Delphi-WinZLB. Este trae ejemplos y, sino, yo lo tengo implementado en el propio WinZLB que trae codigo fuente

anibalnuma
23-05-2003, 20:09:15
Esto te servirà para el caso en concreto que pides:

En el OnCreate de la form pones:

DragAcceptFiles(handle,TRUE) //Hace que la forma acepte archivos

En la sección private pones:

procedure OnDragDrop(var msg:TWMDropFiles);message WM_DROPFILES;

Y en la implementación:

procedure TForm1.OnDragDrop(var msg:TWMDropFiles);message WM_DROPFILES;
var
archivo:array[0..MAX_PATH] of char;

begin
DragQueryFile(msg.drop,0,archivo,sizeof(archivo));
try
Memo1.Lines.LoadFromFile(String(archivo));
except
MessageBox(handle,'No pude abrir el archivo',nil,MB_ICONERROR);
end;
DragFinish(msg.drop);
end;

Novás
26-07-2004, 13:23:03
He probado el código de anibalnuma y al intentar compilar me da el siguiente error...

Unknown directive 'message'

A que puede ser debido

u1025425
26-07-2004, 17:45:20
Creo que debes añadir la unit messages al uses (el primero).

Trigger
26-07-2004, 22:00:30
Espero que esto te sirva ...

http://www.innotts.co.uk/zephyr/drag.html

roman
27-07-2004, 05:39:41
Unknown directive 'message'

A que puede ser debido

En la implementación del método:


procedure TForm1.OnDragDrop(var msg:TWMDropFiles);message WM_DROPFILES;


sobra la parte después del punto y coma.

// Saludos