Wenn man davon ausgeht, daß das
TaskBarRect plus das
WorkAreaRect den gesamten Bildschirm ergibt, dann geht auch folgender Code (einer der beiden Klammerausdrücke ist 0):
Delphi-Quellcode:
function GetTaskBarDimension(
Handle: THandle): Integer;
var
aScreen: TMonitor;
begin
aScreen := Screen.MonitorFromWindow(
Handle);
Result := (aScreen.Width - aScreen.WorkAreaRect.Width) +
(aScreen.Height - aScreen.WorkareaRect.Height);
end;
Klappt natürlich nicht, wenn es noch andere
AppBars gibt. Aber das gilt für deinen Code dann eventuell auch.