Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 5, 2020 10:15:57

Ser5+
Зарегистрирован: 2019-11-18
Сообщения: 65
Репутация: +  1  -
Профиль   Отправить e-mail  

Окно поверх другого окна

Доброе утро. Вопрос такой. Есть программа в которой по кнопке нужно выбрать файл. Выбрали файл в диалоговом окне виджета QtWidgets.QFileDialog.getOpenF ileName. Пока это окно не исчезло,я хочу показать диалоговое окно с текстом “идет подготовка”. Заголовок окна виден,а само окно почему то прозрачное.Как избавиться от прозрачности? Пытался поверх окна разместить,но ничего не выходит.

Использовал

 dialog.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowCloseButtonHint|QtCore.Qt.WindowStaysOnTopHint)
dialog.activateWindow()

Прикреплённый файлы:
attachment Безымянный.JPG (115,0 KБ)

Офлайн

#2 Июнь 5, 2020 12:52:42

Ser5+
Зарегистрирован: 2019-11-18
Сообщения: 65
Репутация: +  1  -
Профиль   Отправить e-mail  

Окно поверх другого окна

Скорее всего эта проблема не решается,так как они наверно сливаются с окном выбора файла. Надо чтобы сначала именно это окно выбора файла закрылось.Ладно оставлю тогда прозрачным,но заголовок виден и этого наверно пока достаточно. Просто хотелось бы нормальное окно с текстом. Это чтобы знать что процесс идет,а то если без доп.окна, выбрали файл и у юзера есть ощущение что прога зависла и пытается снова выбрать файл или еще что-то сделать.

Офлайн

#3 Июнь 11, 2020 08:28:57

Ser5+
Зарегистрирован: 2019-11-18
Сообщения: 65
Репутация: +  1  -
Профиль   Отправить e-mail  

Окно поверх другого окна

Вопрос можно закрывать. Решил проблему с потоками. Правда вместо этих 4 строк пришлось еще кучу функций написать.Обидно конечно. Наверно придется в большинстве программ использовать потоки. Не удобно просто,просто когда идет какой то цикл,то просто тупо вывести окно с текстом типа “ждите” не получится и этот цикл надо в поток впихнуть,чтобы одновременно шел цикл и показало информационное окошко.

Офлайн

#4 Июнь 11, 2020 11:35:27

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2535
Репутация: +  177  -
Профиль   Отправить e-mail  

Окно поверх другого окна

QtGui.QApplication.processEvents()



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version