一、介绍
QLabel 是标签,显示类控件。
二、属性
属性 | 说明 |
text | 显示的文本 |
textFormat | 文本格式 |
pixmap | 设置标签里面的图片 |
scaledContexts | 内容是否自动填充标签(用于图片填满标签) |
alignment | 对齐方式 |
wordWarp | 文本是否换行 |
indent | 设置文本缩进 |
margin | 内部文本到边框的距离,相当于四周文本缩进 |
openExternalLinks | 是否能打开标签内部链接 |
buddy | 关联伙伴,触发QLabel激活伙伴 |
三、文本格式属性
文本格式有四种:纯文本(Qt::PlainText)富文本(Qt::RichText)markdown格式(Qt::MarkdownText)自动决定格式(Qt::AutoText)
1、富文本
其实就是支持 html 的文本格式。
代码:
结果:
解释:在 html 中 <b> 会被解释成加粗,所以 label2 加粗了,但是 label1 是纯文本所以 <b> 被当作文本显示出来了。
2、markdown 格式
代码:
结果:
解释:在 markdown 格式中,文本前面带 # 号表示标题,所以 label3 显示出了标题样式,但是同理 # 在 label1 中直接被显示了。
四、pixmap 属性和 scaledContents 属性
pixmap 属性用于设置 QLabel 里面的图片。
scaledContents 属性用于图片填满 QLabel
代码:
结果:
五、事件初识
但是这样的填满图片方式,由于只在构造函数中初始化一次,所以当改变窗口大小的时候对应图片不会再填满窗口了。
如果希望图片依然还能填满窗口就要有事件的加入,即当窗口大小改变这个事件触发后,图片对应大小也设置成对应窗口大小就能一直填满窗口了。
代码:
结果;
这里不过多解释事件,之后会详细解释。
六、对齐,自动换行,缩进,边距属性
用对应的 set 方法就能设置三个属性。
代码:
结果:
解释:
对齐有多种对齐:
七、伙伴属性
关联伙伴,触发QLabel激活伙伴。
下面实现一个 QLabel 关联 QPushButton
代码:
标签中的文本如果 “& 字符” 就表示一个快捷键,当标签和单选按钮复选按钮绑定的时候,用 alt + 字符就能表示按钮的快捷键选中。