Saving Window Size State: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
(clean-up)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''English''' [[Saving Window Size State Bulgarian|Български]]
[[Category:snippets]]
<code>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0) : QMainWindow(parent) {
  QSettings settings;
  restoreGeometry(settings.value("mainWindowGeometry").toByteArray());
  // create docks, toolbars, etc…
  restoreState(settings.value("mainWindowState").toByteArray());
}


=Saving Window Size State=
void closeEvent(QCloseEvent *event) {
  QSettings settings;
  settings.setValue("mainWindowGeometry", saveGeometry());
  settings.setValue("mainWindowState", saveState());
}
};


The above code will save and restore window position, size, toolbar visibility, toolbar docking area, dock states, locations and sizes. It saves using [http://doc.qt.nokia.com/stable/qsettings.html QSettings] ''[doc.qt.nokia.com]'' which will store your settings in a platform correct way.
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QCoreApplication::setOrganizationDomain("OrgDomain");
QCoreApplication::setOrganizationName("OrgName");
QCoreApplication::setApplicationName("AppName");
QCoreApplication::setApplicationVersion("1.0.0");


===Categories:===
MainWindow w;
 
w.show();
* [[:Category:snippets|snippets]]
return a.exec();
}
</code>

Latest revision as of 14:15, 24 March 2016

class MainWindow : public QMainWindow
{
 Q_OBJECT
public:
 MainWindow(QWidget *parent = 0) : QMainWindow(parent) {
  QSettings settings;
  restoreGeometry(settings.value("mainWindowGeometry").toByteArray());
  // create docks, toolbars, etc…
  restoreState(settings.value("mainWindowState").toByteArray());
 }

 void closeEvent(QCloseEvent *event) {
  QSettings settings;
  settings.setValue("mainWindowGeometry", saveGeometry());
  settings.setValue("mainWindowState", saveState());
 }
};

int main(int argc, char *argv[])
{
 QApplication a(argc, argv);
 QCoreApplication::setOrganizationDomain("OrgDomain");
 QCoreApplication::setOrganizationName("OrgName");
 QCoreApplication::setApplicationName("AppName");
 QCoreApplication::setApplicationVersion("1.0.0");

 MainWindow w;
 w.show();
 
 return a.exec();
}