@Mercury13
Программист на «си с крестами» и не только

Qt: как получить координаты немаксимизированного окна?

Задача — сохранить в конфиге координаты немаксимизированного окна. Как я ни бился — не получилось. Разворачиваешь окно, перезапускаешь программу — оказывается, сохранены именно развёрнутые координаты.

Вот такой код, вызванный из moveEvent и resizeEvent.

void fmMain::saveNonMaxGeometry()
{
    if (!isMaximized()) {
        nonMaxGeometry = geometry();
    }
}


И всё равно ветка срабатывает, когда окно максимизируем. Что делать?

P.S. Получилось, но очень грязно и гарантированно откажет, когда исправят Qt. Может, кто-то из вас сможет выдать более чистый код?

P.P.S. ОС — Windows 7.
  • Вопрос задан
  • 324 просмотра
Решения вопроса 1
@Mercury13 Автор вопроса
Программист на «си с крестами» и не только
normalGeometry()
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@beu
Попробуй QWidget::saveGeometry и QWidget::restoreGeometry должно заработать

Кстати не работает из-за resizeEvent, он приходит перед тем как максимизироваться и поэтому запоминает максимальные размеры окна.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы