Seite 1 von 1

[gelöst] QMainWindow unter Windows Zentrieren

Verfasst: 23. Juli 2005 11:37
von BartSimpson
Hallo, was muss ich machen, damit das QMainWindow nach dem Start in der Bildschirmmitte erschein?

Verfasst: 23. Juli 2005 13:41
von FlorianBecker
Mit QDesktopWidget.

Verfasst: 23. Juli 2005 13:41
von pm_Snake
Hm, du könntest dir mit QDesktopWidget die Größe des Desktops holen und es so dann mit move() mittig ausrichten.
Hab es nicht getestet, aber könnte klappen :)

edit: Da war einer schneller :lol:

Verfasst: 23. Juli 2005 14:10
von BartSimpson
Das hört sich gut an:)
Nur will landed mein Fenter links oben. hier der Code:

Code: Alles auswählen

QDesktopWidget Desktop;
	//Auf welchen Desktop läuft das Programm?
	int Schirmnummer=Desktop.screenNumber(this);
	//wie gross ist dieser?
	QRect Bildschirmgroesse=Desktop.availableGeometry(Schirmnummer);
	//wie gross ist das Programm
	QRect Programmgroesse=Desktop.availableGeometry(this);
	//neue x Position ergibnt sich aus Bildschirmgroesse-Programmgroesse/2
	int x=(Bildschirmgroesse.width()-Programmgroesse.width())/2;
	//Das geleiche für Y
	int y=(Bildschirmgroesse.height()-Programmgroesse.height())/2;
	//jetzt das Fenster verschieben
	this->move(x,y);
Wo habe ist der Wurm drin?

Verfasst: 23. Juli 2005 14:15
von FlorianBecker
QDesktopWidget *desktop = qApp->desktop();

Verfasst: 23. Juli 2005 14:37
von BartSimpson
Danke. jetzte gehts:)