PyQt访问小部件功能中的LineEdit功能?

时间:2019-03-11 00:02:18

标签: python-3.x widget pyqt5

我制作了一个Widget对象并在其中创建了LineEdit对象,但是我无法在Widget对象的Functions中访问LineEdit对象的Function。我知道我可以通过信号进行访问,但是如果要按下一个按钮,我想做的就是编辑LineEdit的文本。在这种情况下,我不能使用信号,因为发送者将是按钮,而不是LineEdit,因此我仍然无法访问它。你知道我如何解决这个问题吗?

class Window(QWidget):

    def __init__(self):
        super().__init__()
        self.init()

    def init(self):
        button = QPushButton("button",self)
        button.move(50,50)
        button.clicked.connect(self.button_clicked)
        textbox = QLineEdit(self)
        self.show()

    def button_clicked(self):
        self.textbox.setText("hello") #error

app = QApplication(sys.argv)
w = Window()
sys.exit(app.exec_())

inotify_add_watch("/home/pi/.config/qt5ct") failed: "No such file or directory"
Traceback (most recent call last):
  File "/home/pi/Desktop/test.py", line 20, in button_clicked
    self.textbox.setText("hello") #error
AttributeError: 'Window' object has no attribute 'textbox'
Backend terminated (returncode: -6)
Fatal Python error: Aborted

0 个答案:

没有答案