Qt中的Qlabel类(标签类)详解

概述:
QLabel是QT界面中的标签类,它从QFrame下继承,QLabel 类代表标签,它是一个用于显示文本或图像的窗口部件。
构造函数
QLabel 类支持以下构造函数:

QLabel(QWidget *parent = 0, Qt::WindowFlags f = 0); 
QLabel(const QString &text, QWidget *parent = 0, Qt::WindowFlags f= 0); 

其中第二个构造函数能够同时通过参数 text 给出要显示的文本,因此是最常用的构造方式。
属性
QLabel 对象的显示内容可以通过属性获取或修改,相关成员函数如下:

QString text() const; // 获取显示的文本 
void setText(const QString &text); // 设置显示的文本,这是一个槽 
const QPixmap *pixmap() const; // 获取显示的图像 
void setPixmap(const QPixmap &pixmap); // 设置显示的图像,这时一个槽 
void setNum(int num); // 设置显示的文本为代表整数 num 的字符串,这是一个槽 
void setNum(double num); // 设置显示的文本为代表浮点数 num 的字符串,这是一个槽 

其中进行设置的函数同时也都是槽。新设置的内容将取代原来的内容。
如下面的代码使用即可

/*头文件内容*/QLabel *label1;QLabel *label2;QLabel *label3;QLabel *label4;QLabel *label5;
/*设置主窗口的属性*/this->resize(800, 600);//设置窗口大小this->setWindowTitle("Qlabel");//设置窗口标题label1 = new QLabel("你好,Qt1",this);//使用QLabel创建一个对象,并且显示文本为“你好,Qt”,指定父对象label1->move(0,0);label2 = new QLabel("你好,Qt2");label2->setParent(this);//调用函数设置父对象label2->move(0,100);//设置文本label3 = new QLabel;label3->setText("设置文本");//设置显示的文本label3->setParent(this);label1->move(0,200);//Labe显示图片QPixmap picture1 ;picture1.load(":/new/prefix1/image/Luffy.png");label4 = new QLabel(this);label4->setPixmap( picture1);label4->setScaledContents(true);//自适应大小label4->resize(200, 200);label4->move(0,300);//Label显示数字label5 = new QLabel(this);label5->setNum(11.0592);label5->move(0,500);

结果为
在这里插入图片描述
注意:
Qlabel使用图片时候只需要定义一个QPixmap 对象设置好路径即可
需要包含头文件

注:Qlabel也可以显示一个gif的动态图
可以使用 QLabel 的成员函数 setMovie 加载动画,可以播放 gif 格式的文件

void setMovie(QMovie * movie)

首先定义 QMovied 对象,并初始化:

QMovie *movie = new QMovie(":/Mario.gif");

播放加载的动画:

movie->start();

将动画设置到 QLabel 中:

QLabel *label = new QLabel;label->setMovie(movie);
label6 = new QLabel(this);
QMovie *movie = new QMovie(":/new/prefix1/image/boy.gif");
movie->setSpeed(200);//设置速度
movie->start();
label6->setMovie(movie);

清空内容

void clear(); // 清空显示内容 

QLabel其他属性
1,alignment 属性代表内容的对齐方式,相关函数成员如下:

Qt::Alignment alignment() const; // 获取对齐方式 
void setAlignment(Qt::Alignment align); // 设置对齐方式 
这里的 Qt::Alignment 类型有以下取值。
1)Qt::AlignLeft::水平方向靠左。
2)Qt::AlignRight:水平方向靠右。
3)Qt::AlignHCenter:水平方向居中。
4)Qt::AlignJustify:水平方向调整间距两端对齐。
5)Qt::AlignTop:垂直方向靠上。
6)Qt::AlignButton:垂直方向靠下。
7)Qt::AlignVCenter:垂直方向居中。
8)Qt::AlignCenter:等价于 Qt::AlignHCenter | Qt::AlignVCenter。
其中一个水平方向的取值和一个垂直方向的取值可以用 “按位或” 的方式组合起来以同时指定两个方向的对齐方式。默认的对齐方式为水平靠左、垂直居中。

2,indent 属性代表文本的缩进值,相关的成员函数如下:

int indent() const; // 获取文本缩进值 
void setIndex(int indent); //设置文本缩进值 

3,margin 属性代表显示内容的边距,相关的成员函数如下:

int margin() const; // 获取边距 
void setMargin(int margin); // 设置边距 

,4,wordWrap 属性
代表显示的文本是否允许换行,相关的成员函数如下:

bool wordWrap() const; // 判断是否允许换行 
void setWordWrap(bool on); // 设置是否允许换行 

5,scaledContents 属性

表示显示图像时是否允许缩放,相关的成员函数如下:
bool hasScaledContenes() const; // 判断是否允许图像缩放 
void setScaledContents(bool on); // 设置是否允许图像缩放 
bool hasScaledContenes() const;    // 判断是否允许图像缩放
void setScaledContents(bool on);    // 设置是否允许图像缩放

如果允许缩放,则显示图像时会进行缩放以填满整个显示区域。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部