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!
c++ qt qmainwindow qguiapplication qsize setgeometry
Commentami!