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 Form unten rechts... (https://www.delphipraxis.net/142642-form-unten-rechts.html)

Detrox 31. Okt 2009 19:00


Form unten rechts...
 
Hi,

Wie kan ich eine Form immer unten rechts über der Startleiste anzeigen lassen, egal welche Auflösung der jeweilige PC hat?

LG

alleinherrscher 31. Okt 2009 19:06

Re: Form unten rechts...
 
Hey, das sind alles so sachen, die du selber per Suche im Forum herausfinden kannst:

mit screen.height und screen.width kannst du die höhe und breite deines Bildschirms ermitteln. und mit folgender Funktion berechnest du die höhe der taskbar (gefunden in [dp]Taskbar höhe[/dp]):

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;
Der Rest müsste klar sein, oder? Von Screen.height und width einfach die höhe und breite deines Fensters abziehen und dann von der höhe noch die Taskbarhöhe abziehen, fertig.

Andreas L. 31. Okt 2009 19:08

Re: Form unten rechts...
 
Man kann auch Screen.WorkareaHeight und WorkareaWidth verwenden, so spart man sich das ermitteln der Taskbarhöhe.

Matze 31. Okt 2009 19:10

Re: Form unten rechts...
 
Die Taskleistenhöhe zu ermitteln wäre sowieso falsch. Es soll Menschen geben, die die Taskleiste am rechten oder linken Rand vertikal angeordnet haben.

alleinherrscher 31. Okt 2009 19:44

Re: Form unten rechts...
 
Zitat:

Zitat von Matze
Die Taskleistenhöhe zu ermitteln wäre sowieso falsch. Es soll Menschen geben, die die Taskleiste am rechten oder linken Rand vertikal angeordnet haben.

Ach, wer macht denn sowas? :lol: Solche Menschen sind mir grundsätzlich unsympatisch :zwinker:

Okay, Spass beiseite: dann is eure Lösung die Beste! :thumb:

Luckie 31. Okt 2009 22:04

Re: Form unten rechts...
 
Ach, ich kenne ein Rechenzentrum, da hat der Administrator die Taskbar standardmäßig an den oberen Bildschirmrand platziert gehabt. Man konnte sie zwar verschieben, aber diese Einstellung wurde nicht gespeichert. :wall:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:18 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