чиститься строка (а точнее lineEdit) в калькуляторе после нажатия на другую кнопку. Заранее спасибо!

При создание калькулятора на python (графического) возникла проблема. При повторном нажатии на ту же самую кнопку (допустим ноль) то строка очищалось и выводило опять 0.

Так же и случалось если ввести 2 цифры первая стирается а 2 появляется на месте 1 вот этот код:

from PySide import QtCore, QtGui
import sys
from ui import Ui_Dialog

#Creat application 
app = QtGui.QApplication(sys.argv)

#Creat from Ui and init UI
Dialog = QtGui.QDialog()
ui = Ui_Dialog()
ui.setupUi(Dialog)
Dialog.show()

#hook logic

def numbers_logic():
    def bp():
        ui.lineEdit.setText( "0" )
    ui.pushButton_10.clicked.connect(bp)
    def bp2():
        ui.lineEdit.setText( "1" )
    ui.pushButton.clicked.connect(bp2)  
    def bp3():
        ui.lineEdit.setText( "2" )
    ui.pushButton_2.clicked.connect(bp3)    
    def bp4():
        ui.lineEdit.setText( "3" )
    ui.pushButton_3.clicked.connect(bp4)
    def bp5():
        ui.lineEdit.setText( "4" )
    ui.pushButton_4.clicked.connect(bp5)
    def bp6():
        ui.lineEdit.setText( "5" )
    ui.pushButton_5.clicked.connect(bp6)    
numbers_logic()

#Run mane loop
sys.exit(app.exec_())

"""


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

Автор решения: Euird

Решение вопроса, как написал @gil9red, заключается в замене строки ui.lineEdit.setText("0") на text = ui.lineEdit.text() + "0" и ui.lineEdit.setText(text), так как setText очищает предыдущий текст.

→ Ссылка