PyQt QComboBox重写行编辑

时间:2018-07-02 19:14:33

标签: python pyqt

我正在尝试使用PyQt创建一些东西。我只遇到了一个我自己无法解决的更大问题。 这是代码:

from PyQt5 import QtWidgets
import sys

app= QtWidgets.QApplication(sys.argv)
formular = QtWidgets.QWidget()
boxlayout = QtWidgets.QHBoxLayout()
formular.setGeometry(300,250,300,250)

text  = QtWidgets.QLineEdit("Hello", parent = formular)

boxcombo = QtWidgets.QComboBox()
boxcombo.addItem('First option')
boxcombo.addItem('Second option')

boxlayout.addStretch()
boxlayout.addWidget(boxcombo)
boxlayout.addStretch()
boxlayout.addWidget(text)
boxlayout.addStretch()

def rewrite():
        index = boxcombo.activated[int]
        if(index == 0):
            text.setText("Hello")
        else:
            text.setText("Goodbye")   

boxcombo.activated.connect(rewrite)

formular.setLayout(boxlayout)
formular.show()
sys.exit(app.exec_())

第一个选项会自动加载,因此我选择了第二个选项,然后选择了第一个选项。再次选择第一个选项时,它不会重写该行。它只能工作一次。

有人可以帮我解决这个问题吗?

0 个答案:

没有答案