Я разрабатываю интерфейс плагина для существующего приложения с использованием PyQt4. Окно создается с помощью uic.loadUi() при нажатии кнопки в главном окне. Проблема в том, что если я снова нажму кнопку (пока отображается окно), окно будет заново создано, а несохраненные изменения будут потеряны. Я не хочу, чтобы окно было модальным. Какие варианты я должен справиться с этой проблемой? Я предполагаю, что это будет связано с проверкой того, что QWidget уже показывает.Как проверить, отображается ли QWidget?
ответ
Вы должны Initializer указатель на QWidget (переменная член) в 0.
Когда кнопка нажата, проверьте, если указатель 0 - если он есть, загружать и показывать виджет, и присвоить указатель чтобы указать на новый виджет. Если при нажатии кнопки указатель не равен нулю, вызовите widget->raise()
и widget->activateWindow()
.
Отключенные кнопки могут расстраивать пользователей, так же как кнопки, которые, как представляется, ничего не делают, например. их эффект скрыт.
Я бы подумал, что это будет больше обрабатываться вашей логикой приложения, чем что-либо еще. Главное окно должно отключить кнопку после ее нажатия, а затем снова включить ее снова, когда окно будет закрыто. Подключите сигнал закрытия во вторичном окне к слоту в главном окне, чтобы уведомить главное окно, когда закрывается вторичное окно.
- 1. Как проверить, закрыт ли QWidget?
- 2. Как проверить, действительно ли мышь оставила QWidget?
- 3. Как проверить, что Qwidget существует
- 4. Как проверить, отображается ли скелет?
- 5. проверить, отображается ли удаленное изображение
- 6. Java JTree - Как проверить, отображается ли узел?
- 7. Как проверить, не отображается ли div?
- 8. Как проверить, отображается ли указатель мыши?
- 9. Как проверить, отображается ли элемент на экране?
- 10. Как проверить, отображается ли UIElement в Silverlight?
- 11. Как проверить, отображается ли функция переключения функций?
- 12. Замените QWidget новым QWidget
- 13. QWidget не отображается на весь экран
- 14. Qt: QWidget не отображается при запуске приложения?
- 15. Как проверить, отображается ли элемент на странице отображается
- 16. Показать дочерний QWidget из родительской области QWidget
- 17. Как проверить, отображается меню
- 18. Почему QWidget не отображается, если он установлен как родительский?
- 19. Как дизайн QWidget?
- 20. Как проверить, отображается ли AlertDialog.builder и отменяется ли его отображение?
- 21. Как узнать, получил ли дочерний QWidget фокус
- 22. QWidget sizeHint()
- 23. PHP - проверить, отображается ли диапазон в переменной?
- 24. проверить, отображается ли представление с помощью windowmanager
- 25. QWidget остается в родительском QWidget
- 26. Перетаскиваемый QWidget
- 27. скрыть QWidget от другого QWidget
- 28. Как закруглить углы QWidget
- 29. PyQt4: Как масштабировать QWidget?
- 30. Как установить ширину QWidget?
Отлично! Просто обратите внимание, что функция называется raise_() в PyQt. – underdark