Есть две кнопки, просто нужно эти кнопки сложить и показать на экране Label

Хочу сложить (+): pushButton_1 + pushButton_2 и = 5 показала на экране. Прошу помочь

from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
    .........................
    .........................

        self.pushButton_1.clicked.connect(lambda: self.posle_najatiya(num=2))  #кнопка при нажатии на экране (label=Qlabel) выводит цифру 2
        self.pushButton_2.clicked.connect(lambda: self.posle_najatiya(num=3)) #кнопка при нажатии на экране (label=Qlabel) выводит цифру 3

    def posle_najatiya(self, num):   #Функция которая показывает результат на label
        self.label.setText(str(num) if self.label.text() == "0" else self.label.text() + str(num))

Ответы (1 шт):

Автор решения: S. Nick
  1. Пример, который вы приводите - должен быть воспроизводимым.

  2. Не изменяйте код, сгенерированный Qt Designer. Создайте другой класс, который наследуется от соответствующего виджета, и используйте созданный класс для его заполнения.

  3. Мои фантазии:


import sys
from PyQt5 import QtCore, QtGui, QtWidgets


class MainWindow(QtWidgets.QMainWindow): 
    def __init__(self):
        super().__init__()
        centralwidget = QtWidgets.QWidget()
        self.setCentralWidget(centralwidget)
        
        self.label = QtWidgets.QLabel()
        self.pushButton_1 = QtWidgets.QPushButton('2')
        self.pushButton_2 = QtWidgets.QPushButton('3')
        
        self.pushButton_1.clicked.connect(
            lambda: self.posle_najatiya(num=2))  
        self.pushButton_2.clicked.connect(
            lambda: self.posle_najatiya(num=3))  

        grid_layout = QtWidgets.QGridLayout(centralwidget)        
        grid_layout.addWidget(self.label, 0, 0, 1, 2)
        grid_layout.addWidget(self.pushButton_1, 1, 0)
        grid_layout.addWidget(self.pushButton_2, 1, 1)

    def posle_najatiya(self, num):        # Функция которая показывает результат на label
        if self.label.text():
            self.label.setNum(int(self.label.text()) + num)
        else:
            self.label.setNum(num)


if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    win = MainWindow()
    win.show()
    sys.exit(app.exec_())

введите сюда описание изображения

→ Ссылка