Registriert seit: 2. Mär 2004
5.508 Beiträge
Delphi 5 Professional
|
Re: StatusBar: Panel-Breite herausfinden
30. Jul 2004, 10:57
Delphi-Quellcode:
// liefert die Abmessungen eines Panels auf einem Statusbar
function GetStatusbarPanelRect(sb: TStatusBar; idx:Integer):TRect;
begin
SendMessage(sb.Handle,SB_GETRECT, idx, integer(@Result));
end;
// findet das Panel unter dem Punkt Pt
// nützlich, um das angeklickte Statusbar Panel zu ermitteln
function GetStatusBarPanel(sb: TStatusBar; const Pt: TPoint): Integer;
var i: Integer; rcPanel: TRect;
begin
Result := -1;
for i := sb.Panels.Count-1 to 0 do
begin
GetStatusbarPanelRect(sb, i);
if PtInRect(rcPanel,Pt) then
begin
Result := i;
Break;
end;
end;
end;
Andreas
|
|
Zitat
|