Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Vista und die Sidebar (https://www.delphipraxis.net/77061-vista-und-die-sidebar.html)

Bomberbb 14. Sep 2006 09:16


Vista und die Sidebar
 
Hallo,
ich teste gerade mit Vista RC1 und Delphi 5 pro. Habe jetzt das Problem das meine Programmfenster teilweise unter der Sidebar liegen. z.B. wenn ich die Eigenschaft Position=poScreencenter gesetzt habe.
Ich möchte das ganze aber nun das genze mittig setzen und dabei die Sidebar berücksichtigen. Unter delphi hab ich keine Einstellung gefunden. Ich denke, cih müsste das selber schreiben. Dafür fehlt mir die Information über die Sidebar. Weiß jemand wie ich die größe der Sidebar abrufen kann?

Gruß

Bomberbb

sh17 18. Sep 2006 10:50

Re: Vista und die Sidebar
 
Die dir verfügbare Desktopgröße bekommst Du von Screen.WorkAreaRect. Oder du setzt Deine Form auf DesktopCenter.

Daniel Schuhmann 20. Sep 2006 22:57

Re: Vista und die Sidebar
 
Zitat:

Zitat von sh17
Oder du setzt Deine Form auf DesktopCenter.

Nein bitte nicht! Damit gibt es auf Dual-Monitor-Systemen den Effekt, dass das Fenster genau in der Mitte zwischen den Monitoren platziert wird.

sh17 21. Sep 2006 09:31

Re: Vista und die Sidebar
 
Zitat:

Zitat von Daniel Schuhmann
Nein bitte nicht! Damit gibt es auf Dual-Monitor-Systemen den Effekt, dass das Fenster genau in der Mitte zwischen den Monitoren platziert wird.

Das weiß ich. In seinem Fall wäre also weder DesktopCenter oder Screencenter eine Option. Handbetrieb angesagt.

Elvis 21. Sep 2006 10:08

Re: Vista und die Sidebar
 
Zitat:

Zitat von sh17
Das weiß ich. In seinem Fall wäre also weder DesktopCenter oder Screencenter eine Option. Handbetrieb angesagt.

ScreenCenter ist IMO die optimalste Lösung im Normalfall.
Und zwar genau aus dem Grund den Daniel genannt hat. Jedes bisschen Gefriemel, dass du außerhalb dieser Stnadardfunktionalität machst ist nicht garantiert in Vistas Nachfolger oder mit esotherischen Monitorkonstellationen funktionieren, wie 2 nebeneinander und einer über dem dem zweiten.
Wenn du mir jetzt sagst, dass sowas so selten ist, dass es dich nicht interessiert muss ich leider sagen: "Hoecker, sie sind raus :roll: ", also antworte das bitte nicht. :mrgreen:

Es wäre jetzt interessanter herauszufinden, ob ScreenCenter direkt auf einem WinAPI feature aufsitzt oder in der VCL gelöst wurde.
Ersteres würde heßen, dass man schleunigst einen Bug report für Vista abschicken sollte, zweiteres wäre einen Eintrag in QC wert. Inklusive einem Code fix und einer Menge Trara drumrum, damit es auch wirklich jeder bemerkt.

sh17 21. Sep 2006 10:34

Re: Vista und die Sidebar
 
nutze selbst mehrere Monitore, kenn das Problem also.

So, zu ScreenCenter. Hab das gleich mal ausprobiert. Das Problem ist ja nur von Bedeutung, wenn die Sidebar auf "Immer im Vordergrund" gestellt ist. Nur dann wird der Desktop verkleinert. D.h., es wäre das gleiche, als wenn ich die Taskbar von unten nach rechts an den Rand schieben würde.

Weder unter XP noch unter Vista funktioniert DesktopCenter. In beiden Fällen ist das Formular immer Screen-zentriert (bei einem Monitor). Mit Screencenter bekommt man aber auch nicht das Problem des verkleinerten Desktops in den Griff, da Screen eben Screen und nicht Desktop ist.

Also bleibt IMO nur die manuelle Positionierung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:37 Uhr.

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