Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-07-2013
Caroso Caroso is offline
Miembro
NULL
 
Registrado: jul 2013
Posts: 44
Poder: 0
Caroso Va por buen camino
Post Ayuda Delphi!!

Hola muchachos soy nuevo en el FORO!!, lo eh observado con frecuencia y me ah sido de mucha utilidad... en esta oportunidad me dispongo a preguntar si alguien me podría ayudar...
El tema es el siguiente:

1) Necesitaría saber como hacer para que, al llevar el cursor (mouse) fuera de mi aplicación, fuera de mi form, la misma se cierre... eh estado probando con el evento OnMouseLeave, pero al colocar un botón en el mismo e intentar posicionarme sobre él, el formulario llama al evento OnMouseLeave y lo cierra.

Desde ya muchas gracias!! PD:\ eh estado leyendo muchos hilos en este foro... pero ninguno se ajusta a mis necesidades.
Responder Con Cita
  #2  
Antiguo 09-07-2013
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración

Y no olvides poner títulos descriptivos a tus preguntas, gracias
Responder Con Cita
  #3  
Antiguo 09-07-2013
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.015
Poder: 22
oscarac Va por buen camino
coloca tu codigo a ver q tienes
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #4  
Antiguo 09-07-2013
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Y recuerda poner los tags al código fuente, ejemplo:



Gracias
Responder Con Cita
  #5  
Antiguo 09-07-2013
Caroso Caroso is offline
Miembro
NULL
 
Registrado: jul 2013
Posts: 44
Poder: 0
Caroso Va por buen camino
Unhappy Este es mi codigo...

Cita:
Empezado por oscarac Ver Mensaje
coloca tu codigo a ver q tienes
Hola oscarac gracias por tu pronta respuesta... te muestro lo que tengo hasta ahora... este codigo lo obtube de este mismo foro...

esto lo ubique en el evento OnDesactivate del formulario...
Código Delphi [-]
procedure TForm1.FormDeactivate(Sender: TObject);
begin
  ReleaseCapture;
end;

y esto otro en el evento OnMouseLeave...

Código Delphi [-]
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState;
  X, Y: Integer);
begin
  If GetCapture = 0 then
    SetCapture(frmLateralDerecho.Handle) ;
  If PtInRect(Rect(frmLateralDerecho.Left, frmLateralDerecho.Top, frmLateralDerecho.Left + frmLateralDerecho.Width, 
              frmLateralDerecho.Top + frmLateralDerecho.Height), ClientToScreen(Point(x, y))) then
    { Cosas a hacer si el puntero del mouse está dentro del formulario }
  else
    Form1.close; { Cosas a hacer si el puntero del mouse está fuera del formulario }
end;

el codigo anda... pero al sacar el mouse del formulario muy rapidamente el mismo permanece abierto...

Muchas Gracias

Última edición por Casimiro Noteví fecha: 09-07-2013 a las 18:55:35.
Responder Con Cita
  #6  
Antiguo 09-07-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Caroso.

Código Delphi [-]
...
type
  TMainForm = class(TForm)
    ...
  private
    procedure CMMouseLeave(var Msg: TMessage); message CM_MOUSELEAVE;
  public
  end;

...

implementation

procedure TMainForm.CMMouseLeave(var Msg: TMessage);
begin
  Close;
end;
...

Saludos.

Edito: Disculpas, no leí lo del boton...
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 09-07-2013 a las 19:04:36.
Responder Con Cita
  #7  
Antiguo 09-07-2013
Caroso Caroso is offline
Miembro
NULL
 
Registrado: jul 2013
Posts: 44
Poder: 0
Caroso Va por buen camino
Smile Respuesta a ecfisa

Cita:
Empezado por ecfisa Ver Mensaje
Hola Caroso.

Código Delphi [-]
...
type
  TMainForm = class(TForm)
    ...
  private
    procedure CMMouseLeave(var Msg: TMessage); message CM_MOUSELEAVE;
  public
  end;

...

implementation

procedure TMainForm.CMMouseLeave(var Msg: TMessage);
begin
  Close;
end;
...

Saludos.

Edito: Disculpas, no leí lo del boton...
jeje no hay problema ecfisa! jeje a cualquiera le puede pasar... este codigo lo eh probado anteriormente... y realmente funciona pero al intentar posicionarme sobre un elemento dentro de el form se cierra...

Desde ya muchas gracias por tu tiempo
Responder Con Cita
  #8  
Antiguo 09-07-2013
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.015
Poder: 22
oscarac Va por buen camino
Creo que el problema esta en el

Form1.Close

no deberia ser

frmLateralDerecho.Close
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #9  
Antiguo 09-07-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Como edité en el mensaje anterior, se me pasó tu comentario sobre el TButton, así que rectifico el código anterior:
Código Delphi [-]
...
type
  TMainForm = class(TForm)
    ...
  private
    procedure CMMouseLeave(var Msg: TMessage); message CM_MOUSELEAVE;
  public
  end;

...

implementation

procedure TMainForm.CMMouseLeave(var Msg: TMessage);
begin
  if FindVCLWindow(Mouse.CursorPos) = nil then
    Close;
end;
...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #10  
Antiguo 09-07-2013
Caroso Caroso is offline
Miembro
NULL
 
Registrado: jul 2013
Posts: 44
Poder: 0
Caroso Va por buen camino
Post

Cita:
Empezado por oscarac Ver Mensaje
Creo que el problema esta en el

Form1.Close

no deberia ser

frmLateralDerecho.Close
mil disculpas oscarac! tienes razon... lo corrigire... pero aun continuo con el problema de al intentar posicionarme sobre un elemento dentro del form este se cierra
Responder Con Cita
  #11  
Antiguo 09-07-2013
Caroso Caroso is offline
Miembro
NULL
 
Registrado: jul 2013
Posts: 44
Poder: 0
Caroso Va por buen camino
Unhappy

gracias por tomarte el tiempo para responder ecfisa!!

Pero con la reforma del código el form cuesta cerrar... me explico mejor... al incorporar la reforma, debo intentar varias veces salir hasta que toma el evento y cierra el form...

Nuevamente muchas gracias por tu tiempo
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
ayuda con delphi for php _CALI PHP 1 08-10-2010 15:31:42
Ayuda con Delphi 7 Amezola OOP 4 13-06-2007 09:12:40
Instalar Ayuda (.HLP) en la Ayuda de Delphi? MasterXP Varios 6 12-04-2006 06:57:49
No puedo abrir la ayuda de delphi 8/delphi 2005 ASAPLTDA Varios 0 24-12-2004 16:20:53


La franja horaria es GMT +2. Ahora son las 03:42:38.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi