我想在QLine Edit小部件上设置FocusIn和Focusout事件,但无法这样做。 我知道我非常接近解决方案,但无法获得确切的解决方案。 我的代码:-
from PyQt4.QtGui import *
url = QtGui.QLineEdit("Please enter URL", w)
url.setFixedWidth(800)
url.move(500,0)
url.focusInEvent(QFocusEvent)
if url.gotFocus():
print "got focus"
elif url.lostFocus():
print "lost focus"
请帮助我调试问题。
您可能应该查看focusInEvent
方法的文档
此事件处理程序可以在子类中重新实现以接收 小组件的键盘焦点事件(收到的焦点(。
它意味着在子类中被覆盖。 您不直接调用它,当 focusIn 事件发生时,事件系统会自动调用它。 你需要做这样的事情。
class MyLineEdit(QtGui.QLineEdit):
def focusInEvent(self, event):
print 'focus in event'
# do custom stuff
super(MyLineEdit, self).focusInEvent(event)
gotFocus
和lostFocus
甚至不是实际的方法。