Ver Mensaje Individual
  #1  
Antiguo 29-01-2007
Angel Fernández Angel Fernández is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia - España
Posts: 141
Reputación: 23
Angel Fernández Va por buen camino
¿Cómo saber qué panel contiene a un Tlabel?

Saludos al foro.

Estoy intentando hacer varios paneles que al pasar por encima el ratón, cambie el color de fondo y cuando ya ha pasado vuelva el color blanco original. Esto sé cómo hacerlo:

Código Delphi [-]
procedure TForm1.colorentrada(sender: TObject);
begin
  if (sender is TPanel) then
    TPanel(sender).color := $0067E0FF;
end;

procedure TForm1.colorsalida(sender: TObject);
begin
  if (sender is TPanel) then
    TPanel(sender).color := clwhite;
end;

procedure TForm1.Panel7MouseLeave(Sender: TObject);
begin
 colorsalida(sender);
end;

procedure TForm1.Panel7MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
 colorentrada(sender);
end;
Ahora bien, cada panel tiene dentro varios tlabel (con la propiedad transparent=true) y quiero que al pasar el raton por encima también cambie el color de fondo del panel que contiene a dicho label. Y aquí viene mi pregunta: ¿cómo puedo saber, de forma global, qué panel contiene a dicho tlabel?

Obviamente, puedo ir editando label a label los eventos onmousemove y onmouseleave, pero con muchos paneles esto sería aburridísimo.

Espero haberme expresado bien.

Un saludo.

PD: No me aclaro con lo de resaltar sintaxis para delphi. Si previsualizo el mensaje y luego lo edito, el texto de delphi se vuelve loco ¿cómo se hace?
Responder Con Cita