Solucionado...
Gracias a por las ayuda, los códigos compartidos me ayudaron a solucionar el problema...
Comparto con ustedes que estaba haciendo yo y como quedo el código final que anda....
Así era mi Código:
Código Delphi
[-]
procedure MyShowHint;
var P: TPoint;
iLeft:Integer;
begin
iLeft:=dxStatusBar.Panels[0].Width+
dxStatusBar.Panels[1].Width+
dxStatusBar.Panels[2].Width+
dxStatusBar.Panels[3].Width;
P := Point(iLeft, FrmMain.Height);
P := ScreenToClient(P);
cxButton1.ShowHint := True;
BalloonHint1.Title := 'Titulo.';
BalloonHint1.Description := 'Mensaje!';
BalloonHint1.ShowHint(P);
end;
Así quedo:
Código Delphi
[-]
procedure MyShowHint;
var P: TPoint;
iLeft:Integer;
begin
cxButton1.ShowHint:= true;
P.X:= cxButton1.Width;
P.Y:= 0;
Windows.ClientToScreen(cxButton1.Handle, P);
BalloonHint1.Title := 'Titulo';
BalloonHint1.Description := 'Mensaje';
BalloonHint1.ShowHint(P);
end;
Principales diferencias, de las cuales tengo que documentarme para ver el porque del asunto, es que en el primer ejemplo estaba utilizando un ScreenToClient, mientras que en el segundo ClientToScreen, en el primero las coordenadas estaban dadas según el tamaño del formulario principal y en el segundo están dadas según el tamaño del Panel del statusbar que contiene el button....
Espero que se entienda...
Saluda Atte Neeruu!!!
