当前位置: 首页 > wzjs >正文

中国建设银行网站首页企业网站首页模板

中国建设银行网站首页企业,网站首页模板,俄罗斯 日本,泰安网站制作工作室标签QLabel QLabel 标签用来显示文本和图片,在 Qt 中使用频率很高。 1. Label属性 属性说明textQLabel 中的文本。textFormat文本的格式。其中 Qt::PlainText 为纯文本;Qt::RichText 为富文本(支持 html 格式); Qt:…

标签QLabel

QLabel 标签用来显示文本和图片,在 Qt 中使用频率很高。

1. Label属性

属性说明
textQLabel 中的文本。
textFormat文本的格式。其中 Qt::PlainText 为纯文本;Qt::RichText 为富文本(支持 html 格式); Qt::MarkdownText 为 markdown 格式; Qt::AutoText 为根据内容自动决定文本格式。
pixmapQLabel 内部包含的图片。
scaledContentstrue 表示内容自动拉伸填充,为 false 则不会。(如自动填充图片)
alignment对齐方案。可以设置水平和垂直方向如何对齐。
wordWraptrue 内部的文本会自动换行,为 false 则不会。
indent设置文本缩进,水平和垂直方向都生效。
margin内部文本和边框之间的边距。(与 indent 的不同点在于,margin 在上下左右四个方向都生效,而 indent 只生效两个方向)
openExternalLink是否允许打开一个外部链接(如当 QLabel 文本包含一个 url 时)。
buddyQLabel 关联一个 “伙伴” ,点击 QLabel 时就会激活对应的伙伴(如伙伴是一个 QCheckBox ,那么该 QCheckBox 就会被选中)。

2. 更改label的文本格式

//widget.cpp
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->label->setTextFormat(Qt::PlainText);ui->label->setText("这是一段纯文本");ui->label_2->setTextFormat(Qt::RichText);ui->label_2->setText("<b>这是一段富文本</b>");ui->label_3->setTextFormat(Qt::MarkdownText);ui->label_3->setText("## 这是一段markdown");}Widget::~Widget()
{delete ui;
}

QLabel1

3. QLabel设置图片

如果要对 QLabel 控件设置图片,可以使用 setPixmap() 接口设置 QLabelpixmap 属性,将图片添加到 QLabel 中,然后将 setScaledContents(true),这样图片就会自动填充,与 QLabel 的大小保持一致。

接着,可以将 QLabel 设置为与窗口大小一致,使用:

void setGeometry(int x, int y, int w, int h)
void setGeometry(const QRect &)

但要注意的是,如果是直接设置值,那么当窗口被拖拽时,QLabel 的大小是不会随窗口大小改变的。实际上,当我们拖拽放大或缩小窗口时,会持续触发窗口的 resize 事件(resizeEvent)。同时,Qt 为该事件留下了一个 size() 接口,用于获取窗口改变后的 QRect 对象。

我们只需要重写该事件的虚函数,让每次拖拽窗口时,都更新 QLabel 的大小即可:

//widget.cpp
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->label->setPixmap(QPixmap(":/jienigui.jpg"));ui->label->setScaledContents(true);}Widget::~Widget()
{delete ui;
}void Widget::resizeEvent(QResizeEvent *event)
{ui->label->setGeometry(0,0,event->size().width(),event->size().height());/*这里写this->width()也是可以的,主要是通过重写resizeEvent()让QLabel的大小随事件的触发进行调整*/}

注意要在 widget.h 里添加 resizeEvent 的声明,以及添加 #include <QResizeEvent> 头文件。

QLabel2

拖拽窗口改变窗口的大小,图片会随之改变大小。

4. 设置QLabel文本对齐方式

首先为了方便查看 QLabel 的边界,可以在控件右侧的 QFrame 中设置 frameShape ,选择能看到四个边框的属性即可:

QLabel3

然后,在代码中使用 setAlignment() 接口设置文本的对齐方式即可,文本对齐有四个枚举变量:

枚举变量作用
Qt::AlignLeft左对齐
Qt::AlignRight右对齐
Qt::AlignTop上对齐
Qt::AlignBottom下对齐
Qt::AlignHCenter水平居中对齐
Qt::AlignVCenter垂直方向居中对齐
Qt::AlignBaseline垂直与基线对齐
Qt::AlignJustify水平方向调整间距两端对齐

可以使用 | 使用多种对齐方式,如 Qt::AlignLeft|Qt::AlignTop 是左上对齐,Qt::AlignCenter 等价于 Qt::AlignHCenter | Qt::AlignVCenter

5. 设置QLabel自动换行

使用 setWordWrap(true) 可以将 wordWrap 属性设置为自动换行:

//widge.cpp
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->label->setWordWrap(true);ui->label->setText("人生就是起起落落落落落落落落落落落落落落落落落落落落落落落落落落");}Widget::~Widget()
{delete ui;
}

QLabel4

6. 设置QLabel缩进

使用 setIndent(int px) 接口可以设置 QLabel 的缩进长度,填入一个整数表示缩进的像素。注意 ident 是全文缩进,即文本所有的行都会缩进该值,且 indent 只在两个方向上生效,具体哪个方向要看 alignment 是如何对齐的。

//widge.cpp
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->label->setWordWrap(true);ui->label->setAlignment(Qt::AlignLeft);ui->label->setIndent(40);ui->label->setText("人生就是起起落落落落落落落落落落落落落落落落落落落落落落落落落落");ui->label_2->setWordWrap(true);ui->label_2->setAlignment(Qt::AlignLeft|Qt::AlignTop);ui->label_2->setIndent(40);ui->label_2->setText("人生就是起起落落落落落落落落落落落落落落落落落落落落落落落落落落");}Widget::~Widget()
{delete ui;
}

QLabel5

可以看到 label 设置为左对齐,只有左边被缩进了 40 个像素,而 label_2 设置了左上对齐,左边和上边都被缩进了 40 个像素。

7. 设置QLabel边距

使用 setMargin() 接口可以设置 QLabel 的左右边距。与 indent 属性不同的是,margin 的边距在四个方向上都生效:

//widge.cpp
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->label->setWordWrap(true);ui->label->setAlignment(Qt::AlignLeft);ui->label->setMargin(40);ui->label->setText("人生就是起起落落落落落落落落落落落落落落落落落落落落落落落落落落");ui->label_2->setWordWrap(true);ui->label_2->setAlignment(Qt::AlignLeft|Qt::AlignTop);ui->label_2->setMargin(40);ui->label_2->setText("人生就是起起落落落落落落落落落落落落落落落落落落落落落落落落落落");}Widget::~Widget()
{delete ui;
}

QLabel6

可以看到对齐方式没有影响到 margin 属性的边距。

8. QLabel设置伙伴关系

QLabel 设置了一个 CheckBox 为伙伴关系后,在 QLabel 的文本中写上 &[key](例如 &A ),可以将 Ctrl+A 设置为 QLabel 的快捷键,而 QLabelCheckBox 绑定了伙伴关系,该 CheckBox 就会被选中。实际这个功能好像也没有什么用。

http://www.dtcms.com/wzjs/394161.html

相关文章:

  • 怎么在服务器做网站搜索引擎营销简称seo
  • 哪个网站 的域名最便宜郑州模板建站代理
  • 做网站有谁做东莞seo关键词排名优化排名
  • 网站备案帐户有什么用百度seo如何快速排名
  • 黄冈个人网站建设平台谷歌推广开户
  • 做最优秀的自己演讲视频网站淘宝定向推广
  • 连州住房建设局网站完整html网页代码案例
  • 有哪些网站适合大学生做兼职天津网站策划
  • 开发网址需要多少钱seo网站优化公司
  • 引擎搜索网站免费网站谁有靠谱的
  • 网站怎么做必须交钱吗网站 seo
  • 酒店 手机网站模板外链购买交易平台
  • 体育新闻windows优化大师是系统软件吗
  • 新闻网站建设研究现状宁波seo深度优化平台
  • 我的家乡网页设计模板成都专业的整站优化
  • 模板生成网站竞价推广代运营企业
  • 两学一做专题网站介绍企业网络营销策划案例
  • 怎么将自己做的网站放到网上营销方案推广
  • 网站做数据分析的意义域名注册阿里云
  • 做网站中心建站快车
  • wordpress 工作室模板宁波seo关键词优化报价
  • 网站的优点网站推广优化业务
  • 网站开发私活活动策划
  • 营口市网站建设百度怎么注册公司网站
  • 做外贸服饰哪个个网站好怎么开网站平台挣钱
  • WordPress网络超时搜索引擎优化怎么做的
  • 做网站包括什么优化加速
  • 南京哪些公司做网站seo软件推广哪个好
  • 苏州网站制作新产品推广策划方案
  • 拉萨市建设厅官方网站中国网站排名