Hola pacopepin.
Cita:
Empezado por pacopenin
Hola ecfisa. Creo que lo que aportas puede servirme.
La aplicación es un form principal y las distintas opciones (clientes, articulos, facturas, etc) se abren en distintos tabs, por lo que los mensajes se generan en ese formulario y el panel en cuestión está también es él. Dentro de cada tab está "incrustado" el form correspondiente a clientes, artículos, facturas ...etc. por eso es imposible saber donde se hace click ya que depende del tab en el que estemos.
|
Si, eso fué mas o menos lo que entendí. Por eso el código del ejemplo oculta el panel cuando se hace click sobre cualquier componente de la aplicación, exceptuando los realizados sobre la barra de título de los forms.
Anque no está en el ejemplo, podes hacer visible el panel desde cualquier form que incluya a form2, ej.:
Código Delphi
[-]
procedure TForm1.btnShowPanelClick(Sender: TObject);
begin
if Assigned(Form2) then
Form2.Panel1.Visible := True;
end;
Saludos
Edito: Creo que en versiones posteriores a Delphi 7 ya están publicados los eventos
OnMouseEnter y
OnMouseLeave.