QLineEdit触发信号.clear()或.setText()方法。因此,每次使用这些方法来阻止LineEdit发出我需要的信号.blockSignals(True)然后再停止.blockSignals(False)。我想知道是否有办法解决?
from PyQt4 import QtCore, QtGui
app = QtGui.QApplication([])
class LineEdit(QtGui.QLineEdit):
def __init__(self, *args, **kwargs):
super(LineEdit, self).__init__()
self.setText('Some Text')
self.textChanged.connect(self.printMessage)
self.show()
def printMessage(self):
print 'Triggered!'
line=LineEdit()
line.clear()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)