C++ (Qt)void QObject::installEventFilter ( QObject * filterObj )
Pythonfrom PyQt4 import QtGui, QtCore, uicimport sys # создаём класс-фильтр для обработчиков событийclass LEFilter(QtCore.QObject): def __init__(self, id, parent = None): QtCore.QObject.__init__(self, parent) self.id = id def eventFilter(self, obj, e): if e.type() == QtCore.QEvent.KeyPress: if e.text() != "1": form1.label.setText(form1.label.text() + e.text()) else: form1.label.setText("") return QtCore.QObject.eventFilter(self, obj, e) if __name__ == "__main__": app = QtGui.QApplication(sys.argv) form1 = uic.loadUi("ui_forms\QtDesigner_and_eventFilter.ui") # назначаем (инсталлируем) фильтр событий для виджета из формы QDesigner form1.lineEdit.installEventFilter(LEFilter(1, form1.lineEdit)) form1.show() sys.exit(app.exec_())