Yo tambien tengo la misma duda.... y vi el codigo de seoane, me pareció muy chevere, traté de hacer una función
Código Delphi
[-]
function TFrmMain.GetStatusBarPanelClicked(StatusBar : TStatusBar; X, Y: Integer) : Integer;
var
i: Integer;
R: TRect;
begin
with StatusBar do
for i:= 0 to Panels.Count - 1 do
begin
SendMessage(Handle,SB_GETRECT,i,Integer(@R));
if PtInRect(R,Point(x,y)) then
begin
Result := i;
Exit;
end else Result := -1;
end;
end;
pero al compilar me lanza este error:
[Error] FrmMainSrc.pas(281): Undeclared identifier: 'SB_GETRECT'
He añadido ComCtrls a los uses y buscando en la ayuda Windows SDK entiendo que este mensaje me devuelve el rectangulo del panel... pero hasta ahi... no se que corregir, añadir o lo que sea para compilar satisfactoriamente...
saludos...
el otro codigo (el de bicho) funciona tambien pero me da cosa cuando algo que a alguien le sale bien a mi me sale mal.