Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi neues N00b-Problem: Fenster zentrieren... (https://www.delphipraxis.net/51195-neues-n00b-problem-fenster-zentrieren.html)

Kara 8. Aug 2005 08:14


neues N00b-Problem: Fenster zentrieren...
 
Hallo!
Nachdem sich mein letztes Problem mit eurer Hilfe und mehrmaligem scharfen Hinschauen in Wohlgefallen aufgelöst hat, sitz ich jetzt vor dem nächsten und raufe mir die Haare. :|
Ich weiß genau, dass es wieder nur eine Kleinigkeit ist, aber ich komm einfach nicht drauf.

Wenn das Programm startet, geht ein Fenster auf, in das man etwas eintragen soll. Seit neuestem ist dieses Fenster allerdings nicht mehr in der Bildschirmmitte sondern rechts unten, so dass ich es immer hochziehen muss.
Wie krieg ich das wieder weg?
Maximieren will ich das Fenster nicht.

Pr0g 8. Aug 2005 08:18

Re: neues N00b-Problem: Fenster zentrieren...
 
Guck dir mal im OE die Position Eigenschaft der Form an. In der Hilfe steht auch eine Beschreibung der einzelnen Werte. poScreenCenter heißt Bildschirmmitte, poMainFormCenter ist die Mitte des Hauptformulares, bspw. für ein mit ShowModal aufgerufener Zweitdialog.

MfG Pr0g

TeronG 8. Aug 2005 08:18

Re: neues N00b-Problem: Fenster zentrieren...
 
Delphi-Quellcode:
  Left       := (Screen.Width div 2)-(Width div 2);                 // Programm mittig starten
  Top        := (Screen.Height div 2)-(Height div 2);               // Programm mittig starten

Kara 8. Aug 2005 08:26

Re: neues N00b-Problem: Fenster zentrieren...
 
:oops:
Unter Position gibts tatsächlich "poScreenCenter"

Vielen Dank für die schnelle Hilfe!

TeronG 8. Aug 2005 08:29

Re: neues N00b-Problem: Fenster zentrieren...
 
lool :oops: .. is mir noch garnich aufgefallen ^^

btw:

Delphi-Quellcode:
if FPosition = poScreenCenter then
  SetBounds(Screen.Monitors[I].Left + ((Screen.Monitors[I].Width - Width) div 2),
    Screen.Monitors[I].Top + ((Screen.Monitors[I].Height - Height) div 2),
      Width, Height)

dahead 8. Aug 2005 10:08

Re: neues N00b-Problem: Fenster zentrieren...
 
ja, da gibts sogar die option poDesktopCenter.

Pr0g 8. Aug 2005 11:56

Re: neues N00b-Problem: Fenster zentrieren...
 
Zitat:

Zitat von dahead
ja, da gibts sogar die option poDesktopCenter.

Aber die Angabe verschiebt das Fenster in die Mitte des Dekstops (bei mehreren Monitoren dann in die Mitte von allen), wenn ich mich recht entsinne. Daher ist für Anwendungen, die auf dem Hauptscreen mittig positioniert werden sollen die poScreenCenter Angabe besser geeignet.

dahead 8. Aug 2005 12:57

Re: neues N00b-Problem: Fenster zentrieren...
 
das liegt daran, dass bei mehreren monitoren dennoch nur ein desktop vorliegt.


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