如何在PyQt中将键盘焦点转换为QTextEdit?
问题描述:
我已经将一个简单的QTextEdit
小部件插入到我的PyQt用户界面中。当用户想要将文本输入到该小部件中时,他必须点击它。我的程序应该能够在某些场合自动发生这种情况,这样用户就可以开始在那个QTextEdit
小部件中输入文本,而无需点击它。如何在PyQt中将键盘焦点转换为QTextEdit?
我已经到了某个地方,但问题仍未完全解决。当我的程序调用focus()
函数时,光标将在最后一行的末尾开始闪烁。但在键盘上键入不会插入任何文本。
class myTextField(QPlainTextEdit):
def __init__(self):
super(myTextField, self).__init__()
...
def focus(self):
self.focusInEvent(QFocusEvent(QEvent.FocusIn))
# Now the cursor blinks at the end of the last line.
# But typing on your keyboard doesn't insert any text.
# You still got to click explicitly onto the widget..
...
###
任何帮助是极大的赞赏:-)