2016-04-12 12 views
0

Ich gebe den Zielbildschirm und die Anwendung startet völlig in Ordnung. Sobald die Benutzeroberfläche aktualisiert wird, wechselt die Anwendung zum anderen Bildschirm (Bildschirm 1, der sich links von Bildschirm 0 befindet).Qt Vollbild-Anwendung schaltet Bildschirme, wenn ui aktualisiert wird

Der Konstruktor:

MyApp::MyApp(QWidget *parent) : 
QMainWindow(parent), 
ui(new Ui::MyApp) 

es auf dem Bildschirm auf Vollbild Einstellung 0:

this->setGeometry(QApplication::desktop()->screenGeometry(1)); 
this->showFullScreen(); 

Antwort

0

Wie kann ich sicherstellen, dass die App-Fenster Vollbild auf dem gleichen Monitor, wo das Fenster angezeigt war vor der Vollbildanzeige?

Es ist unklar, welcher Bildschirm ist die # aber wir können entweder Bildschirmnummer oder sogar den Bildschirm Rechteck sofort für this Widget immer anfordern:

QRect rectScreen = QApplication::desktop()->screenGeometry(this); 
this->setGeometry(rectScreen); 
this->showFullScreen(); 
+0

das ist genau das, was ich tue, das Problem ist, dass die Fenster ändert den Bildschirm, sobald ich ein Label aktualisieren, enthält es – gro

+0

Unter Windows? M ... dies kann von der Qt-Version und dem Prozess DPI-Awareness abhängen. Grauzone. Können Sie versuchen, :: SetProcessDPIAware() aufzurufen; irgendwo in main() -Funktion, bevor die Anwendung die Ereignisschleife ausführt und sehen, ob sich etwas ändert? Funktioniert für mich, aber ich bin mir nicht sicher, ob dir das weiterhilft. – AlexanderVX

+0

Ubuntu, aber ich werde es versuchen. – gro

Verwandte Themen