如何使用PyQT对话框标题栏上的“?”(此小部件)

问题描述 投票:0回答:2

在PyQt QDialog的标题栏的右侧(请参见下面的“ x”旁边,有一个“?”可以帮助用户在“对话”窗口中查询其他任何小部件的帮助。PyQt Dialog title bar

我应该(以编程方式)使其正常工作。一旦 ”?” isClicked,应该能够捕获下一个单击的小部件并提供工具提示或类似的内容。在PyQt中,我不知道如何捕获“?”上的isClicked事件。

我看过几篇文章,其中的问题是如何制作“?”消失了,但是那里的讨论使用的是Qt,而不是PyQt,所以我不明白,他们也没有在谈论我需要什么。我需要使其按预期工作。参见How can I hide/delete the "?" help button on the "title bar" of a Qt Dialog?PyQt4 QInputDialog and QMessageBox window flags

python pyqt pyqt5
2个回答
0
投票

您可以将whatsThis属性设置为所需的任何小部件:

whatsThis

从那时起,只要您单击“?”按钮,然后单击该小部件,将显示带有该文本的工具提示。


0
投票

默认情况下,该按钮的任务是启用whatsThis:按下“?”,然后按下小部件,您将看到与 self.someWidget.setWhatsThis('hello!') 属性相关的消息。

如果要添加其他操作,则可以监视覆盖事件()方法或使用事件过滤器的whatsThiswhatsThis事件。

QEvent::EnterWhatsThisMode
© www.soinside.com 2019 - 2024. All rights reserved.