Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi mehrere Bildschirme und GETWORKAREA (https://www.delphipraxis.net/65211-mehrere-bildschirme-und-getworkarea.html)

ManuMF 13. Mär 2006 20:10


mehrere Bildschirme und GETWORKAREA
 
Hallo,

ich nutze momentan den Code
Delphi-Quellcode:
SystemParametersInfo(SPI_GETWORKAREA, 0, @rWorkArea, 0); // rWorkArea = TRect
um die Desktopmaße zu erhalten. Offnebar gilt das jedoch nicht für mehrere Bildschirme. Kennt jemand eine Möglichkeit für mehrere Bildschirme (ebenfalls mit Taskbar "abgezogen" ;-) )?

Danke,
ManuMF

faux 13. Mär 2006 20:57

Re: mehrere Bildschirme und GETWORKAREA
 
Hallo!

Wieso benutzt du nicht Forms.Screen und dann DesktopRect, DesktopHeight, DesktopLeft, DesktopTop bzw DesktopWidth?

Grüße
Faux

teebee 13. Mär 2006 21:08

Re: mehrere Bildschirme und GETWORKAREA
 
Hol Dir die einzelnen Monitore entweder mit Screen.Monitors oder mit MSDN-Library durchsuchenEnumDisplayMonitors. Über das Handle des Monitors kommst du mitMSDN-Library durchsuchenGetMonitorInfoan die Größe der jeweiligen Workarea.

Mit DesktopWidth, etc. werden Taskbars nicht abgezogen.

Edit: Sehe gerade, dass es ab Delphi 6 auch TMonitor.WorkAreaRect gibt. Noch einfacher.

Gruß, teebee

ManuMF 15. Mär 2006 19:22

Re: mehrere Bildschirme und GETWORKAREA
 
Danke. Habe es so gelöst:

Delphi-Quellcode:
  rWorkArea := Screen.Monitors[0].WorkAreaRect;
  if (Screen.MonitorCount > 1) then
    Inc(rWorkArea.Right, Screen.Monitors[1].WorkareaRect.Right);
Gruß,
ManuMF


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