Аватар для Simply me
244 / 37 / 8
Регистрация: 05.05.2012
Сообщений: 521

Диалог в Qt Designer

12.09.2020, 14:30. Показов 4300. Ответов 24

Студворк — интернет-сервис помощи студентам
Добрый день! Помогите, пожалуйста! Создала в Qt Designer диалог. Назвала файл Ui_My_dialog_ui.ui. В коде создала для него класс My_dialog. В классе MyWidget в функции func_dialog создаю объект класса My_dialog.

1)​Как исправить, что после закрытия окна диалога, всё приложение закрывается с ошибкой (Process finished with exit code -1073741819 (0xC0000005))?

2)​Как сделать, чтобы когда нажимаешь на кнопку в диалоге, вызывалась функция func_with_par и ей передавалось значение self._my_value?

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class MyWidget(..):
 
def func_with_par(self, par):
    …
 
def func_dialog(self):
    dialog_wgt = My_dialog()
    self._my_value = dialog_wgt.ui…     dialog_wgt.ui.myButton.clicked.connect(self.func_with_par)
    dialog_wgt.exec()
 
class My_dialog():
    def init(self):
        super().__init__()
        self._setup_ui()
 
    def _setup_ui(self):
        self.ui = Ui_My_dialog()
        self.ui.setupUi(self)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.09.2020, 14:30
Ответы с готовыми решениями:

PyQt5: в Qt Designer Диалог открытия и сохранения файлов?
Добрый день! Есть ли в PyQt5 в Qt Designer Диалог открытия и сохранения файлов? Или нужно отдельно его добавлять?

Qt Designer и диалог правки стилей
Можно ли как нибудь сделать сделать диалог таблицы стилей сделать не модальным?

Digital Designer / Interface Designer for top company in Munich / Germany. Non EU applicants very welcome, we sponsor Visa!
Digital Designer / Interface Designer (Web, Mobile & Tablet) Digital Designer needed to join popular digital agency based in Munich -...

24
Модератор
Эксперт Python
 Аватар для Fudthhh
2696 / 1602 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
15.09.2020, 08:14
Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import sys
from PyQt5 import QtWidgets
 
 
CONFIGURATION = {
    "VOLUME": 12,
}
 
class ChangeVolumeDialog(QtWidgets.QDialog):
    def __init__(self, parent: QtWidgets.QWidget = None):
        QtWidgets.QDialog.__init__(self, parent)
        self.setWindowTitle("Введите")
 
        self.volume_editor = QtWidgets.QSpinBox(self)
        self.volume_editor.setRange(0, 100)
        self.volume_editor.setValue(CONFIGURATION["VOLUME"])
 
        self.volume_change = QtWidgets.QPushButton("Применить", self)
        self.volume_change.clicked.connect(self.change_volume_event)
 
        layout = QtWidgets.QFormLayout(self)
        layout.addRow(self.tr("Значение громкости"), self.volume_editor)
        layout.addRow(self.volume_change)
 
        self.show()
 
    def change_volume_event(self):
        CONFIGURATION["VOLUME"] = self.volume_editor.value()
 
 
class MainWindow(QtWidgets.QMainWindow):
    def __init__(self, parent: QtWidgets.QWidget = None):
        QtWidgets.QMainWindow.__init__(self, parent)
 
        screen = QtWidgets.QDesktopWidget().availableGeometry()
        self.setGeometry(int(screen.width()/4), int(screen.height()/4),
                         int(screen.width()/2), int(screen.height()/2))
 
        self.setWindowTitle("The Dialog Probe v0.002")
        
        file_menu = self.menuBar().addMenu("Файл")
        file_menu.addAction("Громкость", self.open_change_volume_dialog, shortcut="Ctrl+P")
        file_menu.addAction("Выход", self.close, shortcut="Ctrl+Q")
 
    def open_change_volume_dialog(self):
        ChangeVolumeDialog(self).show()
 
    
if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    mainWin = MainWindow()
    mainWin.show()
    sys.exit(app.exec_())
1
290 / 205 / 68
Регистрация: 18.09.2019
Сообщений: 407
Записей в блоге: 58
15.09.2020, 11:37
DmFat, спасибо!

Я вот как-то всё избегал пользовать show() с диалогами, но эффект-то классный (см. картинку).
У меня даже есть где это применить
Миниатюры
Диалог в Qt Designer  
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2696 / 1602 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
15.09.2020, 13:01
iamvic, можно задать QtCore.Qt.ApplicationModal, чтоб избежать такого эффекта, либо скрывать/показывать существующее окно.
0
 Аватар для Simply me
244 / 37 / 8
Регистрация: 05.05.2012
Сообщений: 521
16.09.2020, 10:10  [ТС]
Спасибо

Не по теме:

Почему-то помогло наследоваться не от того диалога, от которого я наследовалась, а от его наследника. И вызывать не exec(), а exec_() (такая функция была у диалога, от которого отнаследовалась).

0
964 / 719 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
16.09.2020, 13:46
Цитата Сообщение от Simply me Посмотреть сообщение
Почему-то помогло наследоваться не от того диалога, от которого я наследовалась, а от его наследника. И вызывать не exec(), а exec_() (такая функция была у диалога, от которого отнаследовалась).

Не по теме:

чему бы грабли не учили, а сердце верит в чудеса

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.09.2020, 13:46

Как создать диалог выбора шрифта и диалог выбора цвета
как создать диалог выбора шрифта и диалог выбора цвета в wpf

Qt designer
Добрый день.Работаю в Qtdesigner и хочу менять изображения,используя horizontalScrollBar.Подскажите какой метод используется в этом виджете...

Designer
Здравствуйте. В какой версии pyqt есть qt designer или pyqt-tools ? Collecting pyqt5-tools Could not find a version that satisfies...

Qt Designer
У меня вот такой вопрос возник. Я смотрел учебники по Qt и там появился Qt Designer. Так вот сам вопрос ,а есть ли смысл в написании кода...

QT Designer
Здравствуйте всем!!!! Подскажите пожалуйста как можно в Qt строку, введенную пользователем, перевести в символьный массив для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Опции темы

Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru