Я пытаюсь захватить текст одним щелчком мыши на QPushButton и отобразить его в QLabel с pyqt5
Я действительно новичок в этом, так что будьте спокойны со мной!
здеськод, который у меня есть:
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QHBoxLayout, QPushButton, QLabel, QLineEdit
from PyQt5.QtCore import pyqtSlot
class Window(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
hbox = QHBoxLayout()
game_name = QLabel("Game Name:", self)
game_line_edit = QLineEdit(self)
search_button = QPushButton("Search", self)
search_button.clicked.connect(self.on_click)
hbox.addWidget(game_name)
hbox.addWidget(game_line_edit)
hbox.addWidget(search_button)
self.setLayout(hbox)
self.show()
@pyqtSlot()
def on_click(self):
game = QLabel(game_line_edit.text(), self)
hbox.addWidget(game)
if __name__ == '__main__':
app = QApplication(sys.argv)
win = Window()
sys.exit(app.exec_())
Я получаю эту ошибку:
game = QLabel(game_line_edit.text(), self)
NameError: name 'game_line_edit' is not defined
Я не уверен, почему game_line_edit не определен, но у меня такое ощущение, что это нетот же «класс», что и у моего класса on_click, но я не уверен,
любая помощь будет признательна