(7)状态栏

从控件的类型上看,QStatusBar继承自QWidget,因此它可以添加其他的QWidget。

他可以有主要三种类型,临时信息、一般信息和永久信息。其中,临时信息指临时显示的信息,比如QAction的提示等,也可以设置自己的临时信息,比如程序启动之后显示Ready,一段时间后自动消失——这个功能可以使用QStatusBar的showMessage()函数来实现;一般信息可以用来显示页码之类的;永久信息是不会消失的信息,比如可以在状态栏提示用户Caps Lock键被按下之类。

下面将基于(6)那篇文章之后的代码。我们在状态栏中加入一个QLabel控件。

private:
     QLabel *msgLabel;
构造函数中添加:

msgLabel = new QLabel;
    msgLabel->setMinimumSize(msgLabel->sizeHint());
    msgLabel->setAlignment(Qt::AlignHCenter);

    //QMainWindow类里面就有一个statusBar()函数,
    //用于实现状态栏的调用。类似menuBar()函数,
    //如果不存在状态栏,该函数会自动创建一个,如果已经创建则会返回这个状态栏的指针。
    //如果你要替换掉已经存在的状态栏,
    //需要使用QMainWindow的setStatusBar()函数
    statusBar()->addWidget(msgLabel);
    //再没有添加这条语句之前状态栏是有一条短线的,
    //其实,这是QLabel的边框。当没有内容显示时,QLabel只显示出自己的一个边框。
    //但是,很多情况下我们并不希望有这条竖线,于是,我们对statusBar()进行如下设置
    statusBar()->setStyleSheet(QString("QStatusBar::item{border:0px}"));
    //上面这条语句的意思是:简单来说,就是把QStatusBar的子组件的border设置为0,也就是没有边框。

语句的说明见代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值