class QToolTip#

QToolTip 类为任何小部件提供了工具提示(气球式帮助)。更多...

摘要#

静态函数#

注意

此文档可能包含从 C++ 自动转换到 Python 的代码段。我们始终欢迎对代码段翻译的贡献。如果您发现翻译有问题,您也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 创建工单来告诉我们。

详细信息#

警告

本节包含从 C++ 自动转换为 Python 的代码段,可能包含错误。

提示是一个简短的文字,用于提醒用户该小部件的功能。它以独特的黑黄颜色组合立即绘制在指定位置的下方。提示可以是任何格式化的 rich text 字符串。

除非指定为不同的白空间处理方式,否则工具提示中显示的富文本默认自动换行。

通过 QAction 创建的 UI 元素使用 QAction 的 tool tip 属性,因此对于大多数交互式 UI 元素,设置该属性是最简单的方法来提供工具提示。

openAction = QAction(tr("Open..."))
openAction.setToolTip(tr("Open an existing file"))
fileMenu = menuBar().addMenu(tr("File"))
fileToolBar = addToolBar(tr("File"))
fileMenu.addAction(openAction)
fileToolBar.addAction(openAction)

对于任何其他小部件,设置小部件的工具提示的最简单和最常见方法是通过调用其 setToolTip() 函数。

searchBar = SearchBar()
searchBar.setToolTip(tr("Search in the current document"))

通过使用类型为 QEvent::ToolTip 的 QHelpEvent,还可以为小部件的不同区域显示不同的工具提示。在您的小部件的 event() 函数中拦截帮助事件,并使用您想要显示的文本调用 showText()

def event(self, QEvent event):

    if event.type() == QEvent.ToolTip:
        helpEvent = QHelpEvent(event)
        if Element element = elementAt(helpEvent.pos()):
            QToolTip.showText(helpEvent.globalPos(), element.toolTip())
        else:
            QToolTip.hideText()
            event.ignore()

        return True

    return QWidget.event(event)

如果您调用 hideText() 或因为工具提示事件而用空字符串调用 showText(),则应在该事件上调用 ignore(),以表示您不想启动任何特定于工具提示的模式。

请注意,如果您想在项目视图中显示工具提示,模型/视图架构提供设置项目工具提示的功能;例如,setToolTip() 函数。但是,如果要在项目视图中提供自定义工具提示,您必须在小部件的 viewportEvent() 函数中拦截帮助事件并自行处理。

可以使用 setPalette()setFont() 自定义默认工具提示的颜色和字体。当工具提示目前正在显示时,isVisible() 返回 true,而 text() 返回当前可见的文本。

注意

工具提示使用 QPalette 的非活动颜色组,因为工具提示不是活动窗口。

另请参阅

toolTip toolTip

static font()#
返回类型:

QFont

返回用于渲染工具提示的字体。

另请参阅

setFont()

静态 hideText()#

隐藏工具提示。这等同于调用showText()并用空字符串作为参数。

另请参阅

showText()

静态 isVisible()#
返回类型:

bool

如果当前显示工具提示,则返回true

另请参阅

showText()

静态 palette()#
返回类型:

QPalette

返回用于渲染工具提示的调色板。

注意

工具提示使用 QPalette 的非活动颜色组,因为工具提示不是活动窗口。

另请参阅

setPalette()

静态 setFont(arg__1)#
参数:

arg__1QFont

设置用于渲染工具提示的字体。

另请参阅

font()

静态 setPalette(arg__1)#
参数:

arg__1QPalette

设置用于渲染工具提示的调色板。

注意

工具提示使用 QPalette 的非活动颜色组,因为工具提示不是活动窗口。

另请参阅

palette()

静态 showText(pos, text[, w=None[, rect={}[, msecShowTime=-1]]])#
参数:

以全局位置 pos 作为兴趣点显示 text 作为工具提示。工具提示将以特定于平台的方式从该兴趣点显示偏移。

如果您指定非空矩形,则当您将光标移出此区域时,提示将会隐藏。

《rect》在您使用 `w` 指定的组件坐标中。《rect》如果不为空,则必须指定一个组件。否则,这个参数可以是 `None`,但它是用来确定多显示器系统上适当屏幕的。

参数 `msecDisplayTime` 指定了工具提示显示的时间长度,单位为毫秒。默认值为 -1,此时时间基于文本的长度。

如果 `text` 为空,则工具提示会隐藏。如果文本与当前显示的工具提示相同,则提示不会移动。您可以通过先使用空文本隐藏提示,然后在新位置显示新的工具提示来强制移动。

static text()#
返回类型:

字符串

如果存在可见的工具提示,则返回工具提示文本,如果不可见则返回空字符串。