Qt: как установить начальную позицию главного окна? - PullRequest
20 голосов
/ 15 мая 2009

Я думаю, что обычно оконный менеджер определяет начальную позицию позиции QMainWindow на столе. Я хочу сам установить исходную позицию. Как это сделать с Qt в Windows?

Ответы [ 2 ]

25 голосов
/ 15 мая 2009

Вы можете восстановить геометрию окна с помощью restoreGeometry () , а состояние закрепленных элементов с помощью restoreState () , во время построения вашего MainWindow ...

    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 - это константа, которую вы должны увеличивать при значительном изменении пользовательского интерфейса, чтобы предотвратить попытки восстановления недопустимого состояния.

5 голосов
/ 15 мая 2009

Я полагаю, вы ищете setGeometry .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...