Qt控件——标签QLabel

目录

一、属性和方法

1、文本

2、对齐方式

3、换行

4、图像

二、QLabel案例

1、UI布局

2、核心代码


一、属性和方法

1、文本

可以获取和设置按钮上显示的文本

// 获取和设置显示的文本
QString text() const;
void setText(const QString &text);

2、对齐方式

 用于设置标签中的内容在水平和垂直两个方向上的对齐方式

// 获取和设置文本的对齐方式
Qt::Alignment alignment() const;
void setAlignment(Qt::Alignment);

 其中,Qt::Alignment 是一个宏,常用取值如下:

Qt::AlignLeft(0x0001) 水平方向-左对齐
Qt::AlignRight(0x0002) 水平方向-右对齐
Qt::AlignHCenter(0x0004) 水平方向-居中对齐
Qt::AlignTop(0x0020)垂直方向-上对齐
Qt::AlignBottom(0x0040)垂直方向-下对齐
Qt::AlignVCenter(0x0080)垂直方向-居中对齐
Qt::AlignCenter(AlignVCenter | AlignHCenter) 垂直方向和水平方向-居中对齐

上面的每一个宏,可以进行或(|)操作,来同时设置多个对齐方式。 

3、换行

// 获取和设置文本是否允许换行
// 换行时:在 word-breaks处,不会将一个完整的单词显示在两行
bool wordWrap() const; // 判断是否允许换行 
void setWordWrap(bool on); // 设置是否允许换行 

4、图像

// 获取和设置显示的图像
const QPixmap *pixmap() const; 
void setPixmap(const QPixmap &pixmap);

二、QLabel案例

1、UI布局

2、核心代码

#include "widget.h"
#include "ui_widget.h"
#include <QMessageBox>
#include <QTime>
#include <QPixmap>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::on_btn_huoqu_clicked()
{
    QMessageBox::information(this,"标签演示",ui->label_hello->text());
}

void Widget::on_btn_shezhi_clicked()
{
    ui->label_hello->setText(QTime::currentTime().toString());
}

void Widget::on_btn_zuo_clicked()
{
    ui->label_wenzi->setAlignment(Qt::AlignLeft|Qt::AlignVCenter);
}

void Widget::on_btn_zhong_clicked()
{
     ui->label_wenzi->setAlignment(Qt::AlignCenter|Qt::AlignVCenter);
}

void Widget::on_btn_you_clicked()
{
     ui->label_wenzi->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
}

void Widget::on_btn_yunhuan_clicked()
{
    ui->label_haha->setWordWrap(true);
}

void Widget::on_btn_stophuan_clicked()
{
    ui->label_haha->setWordWrap(false);
}

static bool index = 0;

void Widget::on_btn_next_clicked()
{
    QPixmap px;
    if(index == 0){
        px.load(QString(":/icon/xigua.ico"));
        index = 1;
    }else {
        px.load(QString(":/icon/tao.ico"));
        index = 0;
    }
    ui->label_tupian->setPixmap(px);
    // 不要缩放,否则拉伸导致失真
    ui->label_tupian->setScaledContents(false);
    ui->label_tupian->setAlignment(Qt::AlignCenter);
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

琪琪猫不会嵌入式

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值