PDA

Ver la Versión Completa : problemas con evento OnMousseDown


maycampana
12-04-2012, 16:48:16
Hola Amigos, tenía armado y funcionando la posibilidad de arrastrar y soltar desde un RxDBGrid a un ImageEnMView, lo quiero adaptar desde un DrawDBGrid al mismo ImageEnMview y no hay forma de que funcione. No creo que el componente no lo permita porque tiene el evento OnMousseDown disponible pero no se que pasa, que me falta para que funcione, alguna conexión que no me doy cuenta. Bueno si alguien sabe de esto, gracias por ayudarme. Saludos

Chris
12-04-2012, 16:55:35
Hola!

Podrías explicarte mejor lo que deseas hacer y el problema que estás teniendo. Además mencionas componentes que no son estándar. En este caso deberías de dar una descripción de ellos y/o proporcionar un enlace a su sitio web.

Saludos

maycampana
12-04-2012, 19:46:26
Gracias Chris por responder, soy muy novata en Delphi, la verdad que ya lo solucioné gracias al foro, la verdad que hacía varios días que estaba renegando con lo mismo y no me había dado cuenta que sólo me faltaba poner la prop. DragMode en automático, ya anda. Perdoná la molestia y mil gracias por atender tan pronto.

maycampana
10-05-2012, 17:09:10
Me alegré porque lo vi andando, pero no se que pasó que ya no funciona, el DragMode tiene que estar en dmManual no en Automatic.
Este es el código:
procedure Tdpersonales.ImageEnMView1DragOver(Sender, Source: TObject; X,Y: Integer; State: TDragState; var Accept: Boolean);
begin
accept:=(source=DrawDBGrid1);
end;
Procedure Tdpersonales.DrawDBGrid1MousseDown(Sender: TObjects; Button: TMousseButton; Shift: TshiftState; X,Y : Integer);
begin
DrawDBGrid1.BeginDrag(false);
end;
procedure Tdpersonales.ImageEnMView1DragDrop(Sender, Source: TObject; X,Y: Integer);
begin
if source=DrawDBGrid1 then
begin
//aca todo el procedimiento que funciona bien

Bueno, lo que no anda es el moussedown, si alguien tiene idea de que puede ser que no me habilita el mousse para el arrastre, bienvenida su ayuda.
No puedo encontrar la falla a pesar de que en otra version de la aplicación funciona perfectamente, me tiene mal. MIL GRACIAS
end;

maeyanes
10-05-2012, 18:06:20
Hola...

Cuando publiques código fuente en Delphi, usa las etiquetas [delphi]:


begin
ProcedimientoAEjecutar;
Variable := 'hola mundo';
// ejemplo
end;


lo que se mostrará en los foros así:


begin
ProcedimientoAEjecutar;
Variable := 'hola mundo';
// ejemplo
end;



Saludos...

maycampana
10-05-2012, 19:23:45
OK, ahí va de nuevo


procedure Tdpersonales.ImageEnMView1DragOver(Sender, Source: TObject; X,Y: Integer; State: TDragState; var Accept: Boolean);
begin
accept:=(source=DrawDBGrid1);
end;
Procedure Tdpersonales.DrawDBGrid1MousseDown(Sender: TObjects; Button: TMousseButton; Shift: TshiftState; X,Y : Integer);
begin
DrawDBGrid1.BeginDrag(false);
end;
procedure Tdpersonales.ImageEnMView1DragDrop(Sender, Source: TObject; X,Y: Integer);
begin
if source=DrawDBGrid1 then
begin
//aca todo el procedimiento que funciona bien
end;

Bueno, lo que no anda es el moussedown, si alguien tiene idea de que puede ser que no me habilita el mousse para el arrastre, bienvenida su ayuda.
No puedo encontrar la falla a pesar de que en otra version de la aplicación funciona perfectamente, me tiene mal. MIL GRACIAS