我按如下方式保存和恢复 QMainWindow 的大小和位置:
window->resize(savedSize);
window->move(savedPos);
window->show();
void closeEvent(QCloseEvent *e) {
savedSize = window->size();
savedPos = window->pos();
}
问题是窗口位置由应用程序栏(Windows 最小化和最大化按钮所在的栏)更改。因此,当我打开和关闭窗口几次时,窗口会越来越向下移动(每次都恰好是应用程序栏的大小)。我怎样才能准确地恢复到最后的位置?
问候,
最佳答案
你应该使用 QWidget::saveGeometry()获取窗口大小和QWidget::restoreGeometry()恢复它,例如使用 QSetting。您可能也对 QMainWindow::saveState() and QMainWindow::restoreState() 感兴趣
关于c++ - 修复Qt Window大小和位置问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57978767/