Center and Resize MainWindow

From Qt Wiki
Revision as of 15:29, 3 March 2015 by AutoSpider (talk | contribs) (Add "cleanup" tag)
Jump to navigation Jump to search
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

Center and Resize the MainWindow on the current screen

The following method computes the final size of the window setting it so it covers the 90% of the whole screen available space, and then centers it (left-to-right flow):

void MainWindow::centerAndResize(){

// get the dimension available on this screen
QSize availableSize = qApp->desktop()->availableGeometry().size();
int width = availableSize.width();
int height = availableSize.height();
qDebug() << "Available dimensions " << width << "x" << height;
width = 0.9; // 90% of the screen size
height= 0.9; // 90% of the screen size
qDebug() << "Computed dimensions " << width << "x" << height;
QSize newSize( width, height );
setGeometry(
QStyle::alignedRect( Qt::LeftToRight,
Qt::AlignCenter,
newSize,
qApp->desktop()->availableGeometry() )
);