2

QLineEditDesignerを使用して、PyQt4でウィンドウを設計しました。を使用して変換.uiしました。別のファイルを作成し、インポートしてサブクラス化しました。.pypyuic4.pyUi_Class

QLineEditフォーカスを失ったときにいくつかのタスクを実行したい。

行ボタンでイベントiをクリックするだけで、QLineEditフォーカスが失われたイベントに接続できます

4

1 に答える 1

9

:を使用しeventFilterます

class Filter(QtCore.QObject):
    def eventFilter(self, widget, event):
        # FocusOut event
        if event.type() == QtCore.QEvent.FocusOut:
            # do custom stuff
            print 'focus out'
            # return False so that the widget will also handle the event
            # otherwise it won't focus out
            return False
        else:
            # we don't care about other events
            return False

そしてあなたの窓で:

# ...
self._filter = Filter()
# adjust for your QLineEdit
self.ui.lineEdit.installEventFilter(self._filter)
于 2013-02-25T15:07:39.427 に答える