Impostare la dimensione della finestra in Qt

Mattepuffo's logo
Impostare la dimensione della finestra in Qt

Impostare la dimensione della finestra in Qt

Ho deciso di creare un programma in Qt senza usare l'interfaccia grafica; e quindi scrivendo tutto il codice.

La mia finestra deve avere queste caratteristiche:

  • essere centrata
  • partire grande l'80% della risoluzione dello schermo
  • avere una minima risoluzione

Ovviamente voi potete "levare" quello che non vi serve.

Questo il costruttore della mia QMainWindow:

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) {
    QScreen *screen = QGuiApplication::primaryScreen();
    QSize size = screen->availableGeometry().size() * 0.8;
    setGeometry(
                QStyle::alignedRect(
                    Qt::LeftToRight,
                    Qt::AlignCenter,
                    size,
                    QGuiApplication::primaryScreen()->availableGeometry()
                    )
                );
    this->setWindowTitle("QRsync");
    this->setMinimumWidth(800);
    this->setMinimumHeight(600);
}

Con QGuiApplication andiamo a prendere la risoluzione dello schermo.

Sotto impostiamo una QSize dell'80%.

La dimensione e la posizione viene impostata tramite setGeometry.

Enjoy!


Condividi

Commentami!