class QStatusBar#

QStatusBar 类提供了一个用于显示状态信息的水平栏。更多信息

Inheritance diagram of PySide6.QtWidgets.QStatusBar

概述#

属性#

方法#

槽函数#

信号#

本文件可能包含从 C++ 自动转换为 Python 的代码片段。我们始终欢迎对片段翻译的投稿。如果您发现翻译有问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 上创建工单的方式通知我们

详细说明#

警告

本部分包含从 C++ 自动转换为 Python 的代码片段,可能存在错误。

每个状态指示器都属于以下三个类别之一

  • 临时 - 短暂占据大多数状态栏。例如,用于解释工具提示文本或菜单项。

  • 正常 - 占据状态栏的一部分,可能被临时消息隐藏。例如,在文字处理器中显示页码和行号。

  • 永久 - 永不隐藏。例如,用于重要的模式指示,一些应用程序在状态栏中放置大写锁定指示器。

QStatusBar 允许您显示所有三种类型的指示器。

通常,在关联到 QMainWindow 对象时请求状态栏功能。 QMainWindow 提供了一个具有菜单栏、工具栏、停靠窗口状态栏的主应用程序窗口,围绕大中央小部件。状态栏可以通过 statusBar() 函数检索,并使用 setStatusBar() 函数替换。

使用 showMessage() 槽函数显示一个 临时 消息

statusBar().showMessage(tr("Ready"))

要删除临时信息,请使用 clearMessage() 槽,或调用 showMessage() 时设置时间限制。例如

statusBar().showMessage(tr("Ready"), 2000)

使用 currentMessage() 函数检索当前显示的临时信息。QStatusBar 类还提供了一个 messageChanged() 信号,每当临时状态信息发生变化时都会发出。

常规永久 消息通过创建一个小的部件(QLabelQProgressBar 或甚至 QToolButton)并在将它们添加到状态栏中时使用 addWidget()addPermanentWidget() 函数来显示。使用 removeWidget() 函数将这些信息从状态栏中删除。

statusBar().addWidget(MyReadWriteIndication())

默认情况下,QStatusBar 在右下角提供 QSizeGrip。您可以使用 setSizeGripEnabled() 函数禁用它。使用 isSizeGripEnabled() 函数确定当前大小抓取器状态。

可以使用属性直接使用,或者使用操作函数。

财产 property sizeGripEnabled: bool#

该属性表示状态栏右下角的 QSizeGrip 是否启用。

默认情况下,大小控件已启用。

访问函数
__init__([parent=None])#
参数:

parentQWidget

创建一个包含大小控件以及给定 parent 的状态栏。

另请参阅

setSizeGripEnabled()

addPermanentWidget(widget[, stretch=0])#
参数:
  • widgetQWidget

  • stretch – int

永久地将给定的 widget 添加到该状态栏,如果它还不是此 QStatusBar 对象的子项,则对该控件进行重新父项设置。当状态栏增长和收缩时,将使用 stretch 参数计算给定 widget 的合适大小。默认拉伸因子为 0,即给控件留出最小空间。

永久表示该控件可能不会被临时消息遮挡。它位于状态栏的右侧。

addWidget(widget[, stretch=0])#
参数:
  • widgetQWidget

  • stretch – int

将给定的 widget 添加到该状态栏,如果它还不是此 QStatusBar 对象的子项,则对该控件进行重新父项设置。当状态栏增长和收缩时,将使用 stretch 参数计算给定 widget 的合适大小。默认拉伸因子为 0,即给控件留出最小空间。

小部件位于第一个永久小部件的左侧远方(参见 addPermanentWidget())并且可能会被临时消息遮挡。

clearMessage()#

移除任何正在显示的临时消息。

currentMessage()#
返回类型::

str

返回当前显示的临时消息,如果没有则返回空字符串。

另请参阅

showMessage()

hideOrShow()#

确保正确的部件是可见的。

用于 showMessage()clearMessage() 函数。

insertPermanentWidget(index, widget[, stretch=0])#
参数:
  • index – int

  • widgetQWidget

  • stretch – int

返回类型::

int

在指定的 index 处永久地将给定的 widget 插入此状态栏中,如果该 widget 还不是这个 QStatusBar 对象的子项时,将重新设置其父项。如果 index 超出范围,则附加部件(在这种情况下,返回的实际上是部件的实际索引)。

stretch 参数用于在状态栏增长和收缩时计算给定 widget 的合适大小。默认拉伸因子是 0,即给部件分配最少的空间。

永久表示该控件可能不会被临时消息遮挡。它位于状态栏的右侧。

insertWidget(index, widget[, stretch=0])#
参数:
  • index – int

  • widgetQWidget

  • stretch – int

返回类型::

int

在指定的index位置向此状态栏插入给定的widget,如果该widget不是此QStatusBar对象的子项,则将其添加子项。如果index超出范围,则将该控件添加到末尾(在这种情况下,返回的是控件的实际索引)。

stretch 参数用于在状态栏增长和收缩时计算给定 widget 的合适大小。默认拉伸因子是 0,即给部件分配最少的空间。

小部件位于第一个永久小部件的左侧远方(参见 addPermanentWidget())并且可能会被临时消息遮挡。

isSizeGripEnabled()#
返回类型::

bool

属性sizeGripEnabledᅟ的获取器。

messageChanged(text)#
参数:

text – str

当临时状态消息更改时,会发出此信号。新临时消息通过message参数传递,该参数是一个null-string,当消息被删除时。

reformat()#

根据项目更改更改状态栏的外观。

特殊子类可能需要此函数,但通常几何管理会负责任何必要的排序。

removeWidget(widget)#
参数:

widgetQWidget

从状态栏中移除指定的widget

此函数不删除小部件,而是隐藏它。要重新添加小部件,必须调用addWidget()show()两个函数。

另请参阅

addWidget() addPermanentWidget() clearMessage()

setSizeGripEnabled(arg__1)#
参数:

arg__1 – bool

另请参阅

isSizeGripEnabled()

此属性设置器sizeGripEnabledᅟ的值。

showMessage(text[, timeout=0])#
参数:
  • text – str

  • timeout – int

隐藏正常的状态指示并显示指定毫秒数的给定messagetimeout)。如果timeout为0(默认),则消息将显示直到调用clearMessage()槽或者再次调用showMessage()槽来更改消息为止。

请注意,使用showMessage()来显示工具提示文本的临时说明,因此传递0的timeout不足以显示permanent message