Qt Quick 程序下方状态栏的显示方法

来源:互联网 发布:mac 铃声制作软件 编辑:程序博客网 时间:2024/04/30 07:21

在Qt中,对于下方状态栏的显示方法可以运用如下代码进行实现。

首先需要在头文件中加入QLabel进行定义。

#include <QLabel>


在公有函数中加入两个函数,进行函数的定义

void statusBar();//初始化状态void do_cursorChanged();//获取光标


 

在私有函数中声明两个函数

QLabel* first_statusLabel; //声明两个标签对象,用于显示状态信息QLabel* second_statusLabel;


在C++源文件中进行定义头文件中已定义的函数

void widget::statusBar(){    QStatusBar* bar = ui->statusBar; //获取状态栏    first_statusLabel = new QLabel; //新建标签    first_statusLabel->setMinimumSize(150,20); //设置标签最小尺寸    first_statusLabel->setFrameShape(QFrame::WinPanel); //设置标签形状    first_statusLabel->setFrameShadow(QFrame::Sunken); //设置标签阴影    second_statusLabel = new QLabel;    second_statusLabel->setMinimumSize(150,20);    second_statusLabel->setFrameShape(QFrame::WinPanel);    second_statusLabel->setFrameShadow(QFrame::Sunken);    bar->addWidget(first_statusLabel);    bar->addWidget(second_statusLabel);    first_statusLabel->setText(tr("欢迎使用文本编辑器")); //初始化内容    second_statusLabel->setText(tr("花卷制作!"));}void widget::do_cursorChanged(){    int rowNum = ui->textEdit->document()->blockCount();    //获取光标所在行的行号    const QTextCursor cursor = ui->textEdit->textCursor();    int colNum = cursor.columnNumber();    //获取光标所在列的列号    first_statusLabel->setText(tr("%1行 %2列").arg(rowNum).arg(colNum));    //在状态栏显示光标位置
    connect(ui->textEdit,SIGNAL(cursorPositionChanged()),this,SLOT(do_cursorChanged()));}


最后在主函数中进行函数调用的使用即可。

 

0 0