Yop
Maybe it is due to a problem of charachters conversion when you read/write to/from your saving file.
Try to use the power of QSettings by doing something like that:
//------------------------------------------------------------------------------
/**
*/
//------------------------------------------------------------------------------
void
MyMainWindow::saveWindowState()
{
QSettings l_settings
("MyCompanyName",
"MyAppName");
l_settings.beginGroup("MainWindow");
l_settings.setValue("size", this->size());
l_settings.setValue("pos", this->pos());
l_settings.setValue("state", this->saveState());
l_settings.endGroup();
}
//------------------------------------------------------------------------------
/**
*/
//------------------------------------------------------------------------------
void
MyMainWindow::restoreWindowState()
{
QSettings l_settings
("MyCompanyName",
"MyAppName");
// Default size and position
l_settings.beginGroup("MainWindow");
this->resize(l_settings.value("size", l_rect.size()).toSize());
this->move(l_settings.value("pos", l_rect.topLeft()).toPoint());
this
->restoreState
(l_settings.
value("state",
QByteArray()).
toByteArray());
l_settings.endGroup();
//------------------------------------------------------------------------------
/**
*/
//------------------------------------------------------------------------------
void
MyMainWindow::saveWindowState()
{
QSettings l_settings("MyCompanyName", "MyAppName");
l_settings.beginGroup("MainWindow");
l_settings.setValue("size", this->size());
l_settings.setValue("pos", this->pos());
l_settings.setValue("state", this->saveState());
l_settings.endGroup();
}
//------------------------------------------------------------------------------
/**
*/
//------------------------------------------------------------------------------
void
MyMainWindow::restoreWindowState()
{
QSettings l_settings("MyCompanyName", "MyAppName");
// Default size and position
QRect l_rect = QApplication::desktop()->availableGeometry(0);
l_settings.beginGroup("MainWindow");
this->resize(l_settings.value("size", l_rect.size()).toSize());
this->move(l_settings.value("pos", l_rect.topLeft()).toPoint());
this->restoreState(l_settings.value("state", QByteArray()).toByteArray());
l_settings.endGroup();
To copy to clipboard, switch view to plain text mode
Works fine for me with 3 toolbars and about 6 dockwidgets...
}
Bookmarks