Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Height von Taskleiste ermitteln (https://www.delphipraxis.net/133665-height-von-taskleiste-ermitteln.html)

Tim-94 6. Mai 2009 19:12


Height von Taskleiste ermitteln
 
Hi Leute ich hab mal wieder eine Frage: Wie ermittle ich die Höhe der Taskleiste?

Vielen Dank im Vorraus :-D

jaenicke 6. Mai 2009 19:20

Re: Height von Taskleiste ermitteln
 
Schau dir einmal das an:
Delphi-Quellcode:
Screen.Monitors[0].BoundsRect;
Screen.Monitors[0].WorkareaRect;
Das gibt es für jeden Monitor.

Screen hat auch noch weitere interessante Eigenschaften, z.B. Screen.WorkAreaRect, Screen.Height, Screen.WorkAreaHeight, ...

Tim-94 6. Mai 2009 19:37

Re: Height von Taskleiste ermitteln
 
Ja vielen Dank funktioniert super mit Screen.WorkAreaHeight! :-D
Ich habe es vorher mit Screen.Height versucht.

markus5766h 6. Mai 2009 19:38

Re: Height von Taskleiste ermitteln
 
Hallo,
alternativ geht auch

Delphi-Quellcode:
function GetTaskbarHeight: integer;
var
  SysTray: Windows.HWND;
  Rect: TRect;
begin
  Result := -1;
  SysTray := FindWindow('Shell_TrayWnd', nil);
  if SysTray <> INVALID_HANDLE_VALUE then begin
    if GetWindowRect(SysTray, Rect) then begin
      Result := Screen.Height - Rect.Top;
    end;
  end;
end;




function GetTaskbarWidth: integer;
var
  SysTray: Windows.HWND;
  Rect: TRect;
begin
  Result := -1;
  SysTray := FindWindow('Shell_TrayWnd', nil);
  if SysTray <> INVALID_HANDLE_VALUE then begin
    if GetWindowRect(SysTray, Rect) then begin
      Result := Rect.Right - Rect.Left;
    end;
  end;
end;
ist aber im Prinzip das Gleiche

mleyen 6. Mai 2009 19:39

Re: Height von Taskleiste ermitteln
 
Beachte aber das die auch rechts an der Seite positioniert sein kann. :evil:
K, WorkAreaHeight schein ja dein Problem gelöst zu haben. ;)

jaenicke 6. Mai 2009 19:40

Re: Height von Taskleiste ermitteln
 
Wobei dir klar sein muss, dass die Taskleiste nicht unten sein muss usw. ;-)

Das heißt die Frage ist: Worauf kommt es dir an? Auf die Ausmaße des nutzbaren Bildschirmbereichs oder auf die Größe der Taskleiste an sich? Ich bin bei meiner Antwort von ersterem ausgegangen. ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:53 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz