Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-01-2006
elcigarra elcigarra is offline
Miembro
 
Registrado: may 2005
Posts: 269
Poder: 19
elcigarra Va por buen camino
usar "Sender" con Labels

Alguien sabe porqué no funciona o cómo hacer funcionar el siguiente código?
Código Delphi [-]
Procedure TForm1.Label1MouseMove(Sender:TObject);
begin
  if (Sender = Label1) then showmessage('Fue sobre Label1');
  if (Sender = Label2) then showmessage('Fue sobre Label2');
end;

Es decir: Entrar al procedimiento entra cuando muevo sobre uno de los dos labels, pero parece que luego de entrar al procedimiento la Variable "Sender" se olvida de us valor y no entra en ninguno de los "IF". ¿Alguien sabe porqué?
Responder Con Cita
  #2  
Antiguo 04-01-2006
elcigarra elcigarra is offline
Miembro
 
Registrado: may 2005
Posts: 269
Poder: 19
elcigarra Va por buen camino
Y otra ahora que me leo, porqué me pasa que cuando uso las etiquetas [delphi] la linea en la página me queda tan larga?...
Responder Con Cita
  #3  
Antiguo 04-01-2006
Avatar de lucasarts_18
lucasarts_18 lucasarts_18 is offline
Miembro
 
Registrado: mar 2005
Ubicación: Villa Alemana,Chile
Posts: 1.087
Poder: 21
lucasarts_18 Va por buen camino
Cita:
Empezado por elcigarra
Y otra ahora que me leo, porqué me pasa que cuando uso las etiquetas [delphi] la linea en la página me queda tan larga?...
Trata de limpiar las cookies de tu navegador, así se arreglan algunos problemas, ya que la página está con algunos cambios y estos no se reflejan bien hasta después de hacer lo comentado...

Hasta Luego -
__________________
No todo es como parece ser...
Responder Con Cita
  #4  
Antiguo 04-01-2006
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
A mi me funciona correctamente el planteamiento que has hecho.

Lo que no sé exactamente para qué quieres tu procedimiento y por qué usas el evento OnMouseMove ? Yo utilizo OnMouseEnter y OnMouseLeave, que sólo ejecutarán tu código una vez. Con OnMouseMove, entiendo que con cada movimiento del ratón encima de tus label's se ejecutaría tu procedimiento.

Lo que también te tienes que asegurar es que en ambos label's has puesto correctamente la llamada a tu procedimiento en los respectivos eventos OnMouse... y que el nombre (propiedad 'name') que le has asignado a tus label's, ciertamente es 'Label1' y 'Label2'.

Saludos
__________________
Piensa siempre en positivo !
Responder Con Cita
  #5  
Antiguo 04-01-2006
Avatar de Albano
Albano Albano is offline
Miembro
 
Registrado: oct 2004
Ubicación: Nogales, Sonora, Mexico
Posts: 422
Poder: 20
Albano Va por buen camino
No entiendo muy bien

La verdad no entiendo muy bien de que se trata, pero creo que el error esta en que estas poniendo tu codigo en el evento "OnMouseMove" de una de tus etiquetas, el codigo no te funciona porque solo se ejecuta cuando el mouse se esta moviendo en la etiqueta 1, la opcion de OnEnter y OnLeave me parece bien para lo que creo que quieres.
DLB.
Responder Con Cita
  #6  
Antiguo 05-01-2006
elcigarra elcigarra is offline
Miembro
 
Registrado: may 2005
Posts: 269
Poder: 19
elcigarra Va por buen camino
Post

Para que vean lo que puede sufrir un pobre programador al fin descubrí porqué no funcionaba en mi aplicación ya que cuando probaba en cualquier PC, como dijo el amigo gluglu funciona perfectamente.

El tema era que en otra parte de la aplicación (que no tenía nada que ver con esta) asignaba un valor al caption de un TLabel (suponte Label4) el cual iba a ser igual que el Label1 que nos ocupa. Para no escribir todo de nuevo, como corresponde a la sagrada ley del mínimo esfuerzo puse (o intenté poner): Label1.Caption := Label4.Caption

El tema es que había escrito: Label1 := Label4 (demasiado mínimo, el esfuerzo) . El tema que al entrar al Label1 con el mouse yo creo que el pobre Label sufría una especie de ezquizofrenia perdiendo la identidad de sí mismo (yo lo entiendo, pobre, a mi me pasa a veces).

Al corregir esto funciona perfecto. Luego de este despilfarro inútil de horas (más de 3 en esto), me voy a ver la TV.

Gracias igual
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


La franja horaria es GMT +2. Ahora son las 15:00:13.


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