0
私はPyQtが初めてです。 QtDeveloperで3つのコントロールを持つフォームを設計しました。プッシュボタン1つ、コンボボックス1つ、行編集1つ。私のUIフォームの行編集ウィジェットの名前はmyLineEditです。どのQwidgetにフォーカスがあるのかを知りたい(QLineEditまたはQComboBox)。私はインターネットから入手したコードを実装します。コードを実行すると、別の行の編集が作成され、正常に動作します。しかし、私は、.uiフォームで作成されたmyLineEditウィジェットにfocusInEventを与えたいと思います。私のコードが与えられます。助けてください。uiフォームでどのqwidgetがpyqtに焦点を当てているかを知るには
class MyLineEdit(QtGui.QLineEdit):
def __init__(self, parent=None):
super(MyLineEdit, self).__init__(parent)
def focusInEvent(self, event):
print 'focus in event'
self.clear()
QLineEdit.focusInEvent(self, QFocusEvent(QEvent.FocusIn))
class MainWindow(QtGui.QMainWindow,Ui_MainWindow):
def __init__(self, parent = None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
self.myLineEdit = MyLineEdit(self)
それは魅力のように働きました。大丈夫です。 –