千家信息网

Qt中QLabel怎么用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章给大家分享的是有关Qt中QLabel怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。主要成员函数:1.void setText(QString); //设置la
千家信息网最后更新 2026年11月01日Qt中QLabel怎么用

这篇文章给大家分享的是有关Qt中QLabel怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

主要成员函数:

1.void setText(QString); //设置label框内的文本.
2.void hide(); //隐藏label框.
3.void setBuddy(QWidget*); //把另一个部件设为label框的伙伴,方便快捷使用.
4.void clear(); //清空label框内所有内容.
5.void setPixmap(QPixmap(QString)); //设置图片.
6.void setMovie(QMovie*); //设置电影.
7.void setScaledContents(bool); //设置是否按比例填充满整个label框(非常重要)
8.void setToolTip(QString); //设置信息提示,鼠标放在label框上面会自动跳出文字.
9.void setToolTipDuration(int); //设置信息提示的持续时间,单位是毫秒.
10.void setAlignment(Qt::Alignment); //设置label框的对齐格式.
11.void setStyleSheet(QString); //设置label框的样式.


根据上面的QLabel的用法,下面有个关于QLabel的程序代码示例:
下面是程序运行后的情况:


首先进行通过Qt设计师进行布局:

以下是"c.cpp内的代码:"代码中包含注释,方便理解.

#include "c.h"c::c(QWidget *parent)    : QMainWindow(parent){    //应用Qt设计师    ui.setupUi(this);    //修改标题.    this->setWindowTitle(QString::fromLocal8Bit("QLabel的程序实例:"));    //给QStringList填充进去图片.    initPictureList();    //给QMovie对象申请一块空间.    movie = new QMovie;    //给两个QLabel对象设置新的文本.    ui.movieLabel->setText(QString::fromLocal8Bit("未显示电影"));    ui.pictureLabel->setText(QString::fromLocal8Bit("未显示图片"));    //设置两个label框的内容位于中间.    ui.movieLabel->setAlignment(Qt::AlignCenter | Qt::AlignHCenter);    ui.pictureLabel->setAlignment(Qt::AlignCenter | Qt::AlignHCenter);    //初始的时候上一张按钮时无法点击的,因为没有上一张.    ui.previousPictureButton->setEnabled(false);    //给movieLabel设置提示框,当鼠标放在label上就会出现文字提示.    ui.movieLabel->setToolTip(QString::fromLocal8Bit("电影真好看"));     //设置文字提示的持续时间为5000毫秒,也就是5秒后自动消失.    ui.movieLabel->setToolTipDuration(1000);    //设置两个label框自动填充.    ui.movieLabel->setScaledContents(true);    ui.pictureLabel->setScaledContents(true);    //把printLineEdit设为printLabel的伙伴,这样的话你按alt+R就会让光标位于行编辑框内.注意:设置label名字的时候要&R.    ui.printLabel->setBuddy(ui.printLineEdit);    //连接信号与槽.    connect(ui.startButton, SIGNAL(clicked()), this, SLOT(startMovieLabelSlot()));    connect(ui.continueButton, SIGNAL(clicked()), this, SLOT(continueMovieLabelSlot()));    connect(ui.previousPictureButton, SIGNAL(clicked()), this, SLOT(showPreviousPictureSlot()));    connect(ui.nextPictureButton, SIGNAL(clicked()), this, SLOT(showNextPictureSlot()));}c::~c(){}//点击开始按钮的槽函数.void c::startMovieLabelSlot(){    //设置要播放的电影的路径.注意你要把gif文件放到对应的exe程序下.    movie->setFileName("Movie/0.gif");    //movieLabel应用movie.    ui.movieLabel->setMovie(movie);    //开始播放    movie->start();}//点击暂停/继续按钮的槽函数.void c::continueMovieLabelSlot(){    //判断当前电影的状态.    if (movie->state() == QMovie::Running)    {        movie->setPaused(true);        ui.continueButton->setText(QString::fromLocal8Bit("继续"));    }    else if (movie->state() == QMovie::Paused)    {        movie->setPaused(false);        ui.continueButton->setText(QString::fromLocal8Bit("暂停"));    }}void c::initPictureList(){    //把所有照片的路径都放到QStringList里去.    for (int i = 0; i < 10; ++i)    {        QString path = "Pixmap/" + QString::number(i) + ".jpg";        pictureList.push_back(path);    }}//点击上一张按钮的槽函数.void c::showPreviousPictureSlot(){    --pictureNumber;    ui.pictureLabel->setPixmap(QPixmap(pictureList[pictureNumber]));    if (pictureNumber == 0)    {        ui.previousPictureButton->setEnabled(false);    }    ui.nextPictureButton->setEnabled(true);}//点击下一张按钮的槽函数.void c::showNextPictureSlot(){    if (ui.pictureLabel->pixmap() != 0)        ++pictureNumber;    ui.pictureLabel->setPixmap(QPixmap(pictureList[pictureNumber]));    if (pictureNumber == 9)    {        ui.nextPictureButton->setEnabled(false);    }    if (pictureNumber != 0)        ui.previousPictureButton->setEnabled(true);}123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107

以下是"c.h"内的代码:

#ifndef C_H#define C_H#include #include "ui_c.h"#include #include #include #include #include #include class c : public QMainWindow{    Q_OBJECTpublic:    c(QWidget *parent = 0);    ~c();private slots:    void startMovieLabelSlot();    void continueMovieLabelSlot();    void showPreviousPictureSlot();    void showNextPictureSlot();private:    void initPictureList();    Ui::cClass ui;    QMovie *movie;    QStringList pictureList;    int pictureNumber = 0;};#endif // C_H1234567891011121314151617181920212223242526272829303132333435

最后是"main.cpp内的代码:"

#include "c.h"#include int main(int argc, char *argv[]){    QApplication a(argc, argv);    c w;    w.show();    return a.exec();}1234567891011

感谢各位的阅读!关于"Qt中QLabel怎么用"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

代码 电影 提示 内容 函数 按钮 程序 两个 图片 文字 c.h 伙伴 信息 对象 文本 时候 时间 更多 篇文章 设计师 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳市人人互联网科技有限公司 华服互联网科技怎么样 科技平台互联网 华宇互联网科技 银优互联网科技有限公司 善班互联网科技有限公司 上海致骋互联网科技 深圳艾佳互联网科技 中国的互联网科技企业的崛起 昭通云南众福互联网科技有限公司 黑科技闪耀互联网之光 群盈汇互联网科技有限公司 中科明德北京互联网科技 互联网公司高科技产品 北京市互联网新科技 半导体是互联网高科技吗 工业互联网科技创业 互联网时代科技型公司的机会 玉溪新华互联网科技怎么选 互联网科技快速发展优美句子 互联网科技公司的优势 智慧科技互联网 互联网高科技股票 湖南洣水互联网科技有限公司扣款 玖二柒互联网科技公司待遇 济南有互联网科技公司吗 电子商务与互联网科技的关系 互联网科技实习生岗位 互联网营销推广黑科技 平安好医生打造互联网科技医疗
0