【发布时间】:2014-11-17 16:47:06
【问题描述】:
我正在尝试在基于 QDialog 的应用程序中使用“WhatsThis”功能,因此当用户单击标题栏中的小问号时,会出现一个小“关于”对话框。
默认情况下,单击该按钮只会将鼠标光标更改为“禁止”光标:
基于a previous post,我重新实现事件如下:
def event(self, event):
if event.type() == QtCore.QEvent.EnterWhatsThisMode:
print "Here is a useful message"
return True
return QtGui.QDialog.event(self, event)
虽然这会打印出所需的消息,但我仍然会得到“禁止”光标,即使我将以下内容添加到上述事件函数中:
QtGui.QApplication.setOverrideCursor(QtGui.QCursor(QtCore.Qt.ArrowCursor))
这会暂时创建一个箭头,但是当我将光标移到应用程序中标题栏之外的任何位置时,光标再次变为禁止。这几乎就像是在某个需要执行的地方打开了一个模态对话框。
我怎样才能阻止这种被禁止的行为?
【问题讨论】: