![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
yo lo hice para abrir un archivo rtf y arrastrarlo a un richview.
En la seccion de "private" agrega este procedimiento. Código:
private
procedure WMDropFiles(var Msg: TWMDropFiles); message M_DROPFILES;
...
procedure TfMain.WMDropFiles(var Msg: TWMDropFiles);
var
CFileName: array[0..MAX_PATH] of Char;
RutaArchivoTemp : String;
begin
try
if DragQueryFile(Msg.Drop, 0, CFileName, MAX_PATH) > 0 then
begin
sbDocumento.Panels[0].Text := 'Archivo '+CFileName;
if extraerTextoWord(CFileName,RutaArchivoTemp) then begin // aca convierte de word a RTF.
reDocumento.lines.LoadFromFile(rutaArchivoTemp);
btnIniciarProceso.Enabled := True;
end;
Msg.Result := 0;
end;
finally
DragFinish(Msg.Drop);
end;
end;
__________________
"El ordenador nació para resolver problemas que antes no existían." Bill Gates. |
|
#2
|
|||
|
|||
|
ahh
falto esto de registrarlo. Código:
procedure TfMain.FormCreate(Sender: TObject);
begin
DragAcceptFiles(Self.Handle, true);
end;
__________________
"El ordenador nació para resolver problemas que antes no existían." Bill Gates. |
|
#3
|
||||
|
||||
|
Muchas gracias por vuestras rápidas respuestas. La solución en C++Builder es esta:
Código:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
// Para aceptar arrastrar archivos.
DragAcceptFiles(Handle,true);
// Asignación del procesador de mensajes para la aplicación y sus ventanas
Application->OnMessage = AppMessage;
}
Código:
// Procesar los mensajes de la aplicación
void __fastcall TForm1::AppMessage(tagMSG &Msg, bool &Handled)
{
// Procesar el mensaje WM_DROPFILES, aquí o en otra función a parte...
if(Msg.message == WM_DROPFILES){
char archivo[MAX_PATH];
int n = DragQueryFile((HDROP)Msg.wParam, 0, archivo, sizeof(archivo));
if(n>0) Procesar(archivo); // Funcion que procesa el archivo
DragFinish((HDROP)Msg.wParam);
Handled = true;
}
}
Saludos. ![]() Última edición por escafandra fecha: 27-03-2008 a las 21:09:06. |
|
#4
|
||||
|
||||
|
oye encontre un componente, aunque ya solucionaste tu problema depronte te ayude en el futuro:
http://cc.codegear.com/Item/23823 |
|
#5
|
||||
|
||||
|
Muchas gracias Negriz. Voy a mirarlo, nunca está de mas el exceso de información y de herramientas.
Saludos ![]() |
|
#6
|
||||
|
||||
|
He encontrado otra forma de hacer lo mismo, aquí tenemos un ejemplo: http://cc.codegear.com/item/15716
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Arrastrar y soltar en un TreeView | Gabriel2 | OOP | 3 | 09-12-2005 13:57:03 |
| Arrastrar y soltar en un TreeView... | User_baja1 | Varios | 1 | 18-04-2005 13:39:50 |
| Arrastrar y soltar con DBGrids | NickName | Varios | 2 | 22-03-2005 02:20:03 |
| Arrastrar y Soltar!!! | chechu | Varios | 6 | 21-10-2004 20:26:35 |
| arrastrar y soltar imagen | haZe | Varios | 2 | 03-03-2004 17:06:10 |
|