返回介绍

QStatusBar类

发布于 2019-10-04 15:03:02 字数 4451 浏览 1251 评论 0 收藏 0

QStatusBar类提供了一个适合呈现状态信息的水平条。 详情请见……

#include <qstatusbar.h>

Inherits QWidget。

所有成员函数的列表。

公有成员

  • QStatusBar ( QWidget*parent = 0, constchar*name = 0 )
  • virtual ~QStatusBar ()
  • virtual void addWidget ( QWidget*widget, intstretch = 0, boolpermanent = FALSE )
  • virtual void removeWidget ( QWidget*widget )
  • void setSizeGripEnabled ( bool )
  • bool isSizeGripEnabled () const

公有槽

  • void message ( constQString&message )
  • void message ( constQString&message, intms )
  • void clear ()

属性

  • bool sizeGripEnabled- 在状态条右下方的QSizeGrip是否有效

保护成员

  • virtual void paintEvent ( QPaintEvent * )
  • void reformat ()
  • void hideOrShow ()

详细描述

QStatusBar类提供了一个适合呈现状态信息的水平条。

每一个状态指示器都会落在下面这三种类别之内:

  • 临时的 - 暂时地占用状态条的大部分。例如,用于解释工具提示文本或者菜单条目。
  • 正常的 - 占用状态条的一部分并且也可能被临时的信息隐藏。例如,用于在字处理器中显示页数和行数。
  • 永久的 - 从不被隐藏。用于重要的模式指示,例如,一些程序把大小写指示器放在状态条中。

QStatusBar让你能够显示上述所有类型的指示信息。

为了显示临时的消息,请调用message()(可以把一个合适的信号和它连接起来)。如果要移除一个临时的消息,调用clear()。这里有两类消息:一类消息一直显示到下一个clear()或mesage()被调用才消失,并且另一种是有时间限制的:

     connect( loader, SIGNAL(progressMessage(const QString&)),
              statusBar(), SLOT(message(const QString&)) );

     statusBar()->message("Loading...");  // 初始消息
     loader.loadStuff();                  // 发射进程消息
     statusBar()->message("Done.", 2000); // 显示2秒的最后消息
  

正常的永久的消息通过创建一个小窗口部件并且然后通过addWidget()把它添加到状态条中来被显示。QLabel、QProgressBar或者甚至QToolButton这些窗口部件对于添加到状态条都是很有用的。removeWidget()用于移除窗口部件。

     statusBar()->addWidget(new MyReadWriteIndication(statusBar()));
  

默认情况下,QStatusBar在右下角提供了一个QSizeGrip。你可以使用setSizeGripEnabled(FALSE)来使它失效。

也可以参考QToolBar、QMainWindow、QLabel、图形用户界面设计手册:状态条、主窗口和相关类和帮助系统。


成员函数文档

QStatusBar::QStatusBar ( QWidget*parent = 0, constchar*name = 0 )

构造一个父对象为parent、名称为name并且有一个大小控制的状态条。

也可以参考sizeGripEnabled。

QStatusBar::~QStatusBar () [虚]

销毁这个状态条并且释放任何已经分配的资源和子窗口部件。

void QStatusBar::addWidget ( QWidget*widget, intstretch = 0, boolpermanent = FALSE ) [虚]

widget添加到这个状态条。

如果permanent为真,widget就是永久可视的并且如果permanent为假,它也可以被临时的消息遮挡。默认为假。

如果permanent为真,widget被定位在状态条的最右面。如果permanent为假(默认),widget被调节到第一个永久窗口部件的左面。

stretch用于在状态条变大或者变小时为widget计算一个合适的大小。默认为0是指使用最小的空间。

这个函数可以导致一些闪烁。

也可以参考removeWidget()。

void QStatusBar::clear () [槽]

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

也可以参考message()。

void QStatusBar::hideOrShow () [保护]

确保右面的窗口部件是可视的。被message()和clear()使用。

bool QStatusBar::isSizeGripEnabled () const

如果在状态条右下方的QSizeGrip是生效的,返回真,否则返回假。详细情况请参考“sizeGripEnabled”属性。

void QStatusBar::message ( constQString&message ) [槽]

隐藏正常状态指示器并且显示message,直到clear()或者另一个message()被调用。

也可以参考clear()。

void QStatusBar::message ( constQString&message, intms ) [槽]

这是一个重载成员函数,提供了方便。它的行为基本上和上面的函数相同。

隐藏正常状态指示器并且显示messagems毫秒,或者直到clear()或者另一个message()被调用,看哪一个先发生了。

void QStatusBar::paintEvent ( QPaintEvent* ) [虚 保护]

如果适当,显示临时的消息。

从QWidget中重新实现。

void QStatusBar::reformat () [保护]

改变状态条的外观来说明项的变化。特殊的子类可能需要这个,但是几何形状管理将通常要注意任何需要的重新整理。

void QStatusBar::removeWidget ( QWidget*widget ) [虚]

从状态条中移除widget

这个函数可能导致一些闪烁。

注意widget没有被删除。

也可以参考addWidget()。

void QStatusBar::setSizeGripEnabled ( bool )

设置在状态条右下方的QSizeGrip是否生效。详细情况请参考“sizeGripEnabled”属性。


属性文档

bool sizeGripEnabled

这个属性保存的是在状态条右下方的QSizeGrip是否有效。

可以让状态条右下方的QSizeGrip生效或者失效。默认它是生效的。

通过setSizeGripEnabled()设置属性值并且通过isSizeGripEnabled()来获得属性值。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文