中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Qt中QLabel怎么用

發布時間:2021-11-23 09:46:49 來源:億速云 閱讀:283 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關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中QLabel怎么用

Qt中QLabel怎么用


首先進行通過Qt設計師進行布局: 
Qt中QLabel怎么用

以下是”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 <QtWidgets/QMainWindow>#include "ui_c.h"#include <QMessageBox>#include <QLabel>#include <QPushButton>#include <QMovie>#include <QPixmap>#include <QString>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 <QtWidgets/QApplication>int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    c w;
    w.show();    return a.exec();
}1234567891011

感謝各位的閱讀!關于“Qt中QLabel怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西安市| 永寿县| 翁源县| 中宁县| 平乡县| 错那县| 将乐县| 龙江县| 封开县| 富裕县| 米易县| 牙克石市| 施甸县| 漳浦县| 工布江达县| 内江市| 阳泉市| 福州市| 华阴市| 东乡族自治县| 甘孜县| 绥德县| 合作市| 南和县| 满洲里市| 七台河市| 广昌县| 克东县| 吉林省| 长治市| 赞皇县| 华阴市| 鹿邑县| 东宁县| 宽城| 卢氏县| 亳州市| 宜君县| 晋宁县| 朝阳县| 东阿县|