在Qt中,可以使用QSettings类来在会话之间存储窗口大小。以下是一个简单的示例代码:
#include <QApplication>
#include <QMainWindow>
#include <QSettings>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QMainWindow window;
// 加载之前保存的窗口大小
QSettings settings("MyCompany", "MyApp");
window.resize(settings.value("size", QSize(800, 600)).toSize());
window.move(settings.value("pos", QPoint(100, 100)).toPoint());
// 当窗口大小发生变化时保存新的大小和位置
QObject::connect(&window, &QMainWindow::resize, [&settings, &window]() {
settings.setValue("size", window.size());
settings.setValue("pos", window.pos());
});
window.show();
return app.exec();
}
在这个示例中,我们使用QSettings类来保存和加载窗口的大小和位置。当窗口大小发生变化时,我们将新的大小和位置保存到QSettings对象中。在下一次启动应用程序时,我们可以从QSettings对象中加载之前保存的窗口大小和位置。
注意,这个示例中的QSettings对象使用了两个参数:组织名称和应用程序名称。这些参数用于构建QSettings对象的存储路径。在这个示例中,我们使用了"MyCompany"作为组织名称和"MyApp"作为应用程序名称。这些名称可以根据实际情况进行修改。
领取专属 10元无门槛券
手把手带您无忧上云