我想了解如何自动向控制台获取lineedit值,以便可以处理数据。
我的程序与键盘类型的条形码扫描仪相连,扫描时可以将条形码输入到行编辑器中,但是为了将输入内容放入日志(终端)中,需要单击它下方的按钮。
代码如下:
import sys
from PyQt5 import QtWidgets
class Window(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.init_ui()
def init_ui(self):
self.le = QtWidgets.QLineEdit()
print(self.le.text())
self.b = QtWidgets.QPushButton('Clear')
self.b2 = QtWidgets.QPushButton('Print')
self.b2.click()
v_box = QtWidgets.QVBoxLayout()
v_box.addWidget(self.le)
v_box.addWidget(self.b)
v_box.addWidget(self.b2)
self.setLayout(v_box)
self.b.clicked.connect(self.btn_click)
self.b2.clicked.connect(self.btn_click)
self.show()
def btn_click(self):
sender = self.sender()
if sender.text() == 'Print':
print(self.le.text())
else:
self.le.clear()
app = QtWidgets.QApplication(sys.argv)
a_window = Window()
sys.exit(app.exec_())
但是我想要的是,当条形码扫描仪击中LE时,条形码立即发送到终端,这就是为什么我试图在pyqt5中找到有关“如何自动单击按钮”的问题,但似乎没有回答我遇到的问题。
关于不依赖任何按钮如何执行此操作的任何建议?还是在输入后发出按钮按下的声音?