簡體   English   中英

Qt:如何設置主窗口的初始位置?

[英]Qt: how to set main window's initial position?

我認為通常的窗口管理器確定桌面上QMainWindow位置的初始位置。 我想自己設定初始位置。 如何在Windows上使用Qt完成此操作?

您可以在構造MainWindow的過程中使用restoreGeometry()恢復窗口幾何形狀,並使用restoreState()恢復停靠元素的狀態。

    QSettings settings("yourcompany", "yourapp");

    restoreGeometry(settings.value("geometry").toByteArray());
    restoreState(settings.value("state").toByteArray(),YOUR_UI_VERSION);

然后,如果覆蓋closeEvent() ,則可以如下保存狀態:

    QSettings settings("yourcompany", "yourapp");

    settings.setValue("geometry", saveGeometry());
    settings.setValue("state", saveState(YOUR_UI_VERSION));

YOUR_UI_VERSION是一個常數,在UI發生重大變化時應增加此常數,以防止嘗試恢復無效狀態。

我相信您正在尋找setGeometry

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM