Я пытаюсь получить позиции и состояние QDockWidgets, сохраненных/восстановленных, когда приложение завершено и перезаписано. Поток в моем главном окне выглядит следующим образом:Закрытое состояние QDockWidgets не восстановлено restoreDockWidget?
restoreState(state.toByteArray());
// Dock widget gets created
restoreDockWidget(dockWidget);
Это прекрасно работает освобожденное одно: если прикрепляемые виджеты закрыты при выходе из приложения, они появляются в их последнюю позицию в следующий раз, когда приложение запускается, в то время как Я ожидаю, что у них будет начальное скрытое состояние. Есть ли что-то, что я пропустил об использовании restoreDockWidget? Или я должен обрабатывать видимое состояние виджета док-станции вручную?
Update: Обратите внимание, что если я делаю следующим образом:
// Dock widget gets created
restoreState(state.toByteArray());
Тогда ранее скрытые виджеты остаются скрытыми. К сожалению, я не могу полагаться на эту схему, поскольку у меня есть виджеты док-станции, которые создаются плагинами после восстановления главного окна.
Редактировать: похоже, исправлены в последних версиях Qt.
Спасибо за ответ - я проверю, все ли это в случае с текущим Qt Git. Если это так, я думаю, что стоит отправить вопрос в трекер ошибок, так как использование restoreState() приводит к ожидаемому поведению. – Gnurou