2
Пример подмешивания дополнительных пользовательских данных к встроенным в виджеты сигналам.
6
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton
9
Модуль sys нужен для доступа к аргументам командной строки. Если использование аргументов
10
командной строки не предполагается, то импорт можно не выполнять. При этом, при создании
11
приложения в класс QApplication([]) в качестве аргумента передается пустой список.
12
Импорт из модуля PySide6.QtWidgets класса для управления приложением QApplication и
13
класса основного окна QMainWindow, класса нажимаемой кнопки QPushButton.
17
class MainWindow(QMainWindow):
19
Класс главного окна приложения от супер класса главных окон
23
Конструктор главного окна приложения
25
QMainWindow.__init__(self)
26
btn = QPushButton('Press me')
27
btn.setCheckable(True)
28
btn.clicked.connect(lambda checked: self.button_clicked(checked, btn))
30
self.setCentralWidget(btn)
32
def button_clicked(self, checked: bool, btn: QPushButton) -> None:
34
Метод ресивер (слот) сигнала на нажатие кнопки
35
:param checked: bool - состояние кнопки, передаваемое сигналом
36
:param btn: QPushButton - объект, передаваемый вместе с сигналом
37
(подмешанные пользовательские данные)
46
Функция запуска кода верхнего уровня приложения
49
app = QApplication(sys.argv)
55
if __name__ == '__main__':