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

网站建设公司怎么找业务动漫设计与制作难吗

网站建设公司怎么找业务,动漫设计与制作难吗,主图模板免费,长春火车站最新消息Label QLabel 可以⽤来显⽰⽂本和图⽚ 属性说明textQLabel中的⽂本textFormat⽂本的格式.• Qt::PlainText 纯⽂本• Qt::RichText 富⽂本(⽀持html标签)• Qt::MarkdownText markdown格式• Qt::AutoText 根据⽂本内容⾃动决定⽂本格式pixmapQLabel 内部包含的图⽚.scaledCo…

Label

QLabel 可以⽤来显⽰⽂本和图⽚

属性说明
textQLabel中的⽂本
textFormat⽂本的格式.
• Qt::PlainText 纯⽂本
• Qt::RichText 富⽂本(⽀持html标签)
• Qt::MarkdownText markdown格式
• Qt::AutoText 根据⽂本内容⾃动决定⽂本格式
pixmapQLabel 内部包含的图⽚.
scaledContents设为true表⽰内容⾃动拉伸填充 QLabel
设为false则不会⾃动拉伸
alignment对⻬⽅式.
可以设置⽔平和垂直⽅向如何对⻬.
wordWrap设为true内部的⽂本会⾃动换⾏.
设为false则内部⽂本不会⾃动换⾏.
indent设置⽂本缩进.⽔平和垂直⽅向都⽣效.
margin内部⽂本和边框之间的边距.
不同于于indent,但是是上下左右四个⽅向都同时有效.
⽽indent最多只是两个⽅向有效(具体哪两个⽅向有效取决于alignment)
openExternalLinks是否允许打开⼀个外部的链接.
(当QLabel⽂本内容包含url的时候涉及到)
buddy给QLabel关联⼀个"伙伴",这样点击QLabel时就能激活对应的伙伴.
例如伙伴如果是⼀个QCheckBox,那么该QCheckBox就会被选中
代码⽰例:显⽰不同格式的⽂本

1)在界⾯上创建三个 QLabel
尺⼨放⼤⼀些.objectName分别为label,label_2,label_3
![[Pasted image 20250420101138.png]]

2)修改widget.cpp,设置三个label的属性

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//把第一个label设置成显示纯文本ui->label->setTextFormat(Qt::PlainText);ui->label->setText("<b>这是一段纯文本</b>");ui->label_2->setTextFormat(Qt::RichText);ui->label_2->setText("<b>这是一段富文本</b>");ui->label_3->setTextFormat(Qt::MarkdownText);ui->label_3->setText("# 这是一段markdown文本");
}

![[Pasted image 20250420103816.png]]

代码⽰例:显⽰图⽚

虽然 QPushButton 也可以通过设置图标的⽅式设置图⽚,但是并⾮是⼀个好的选择.更多的时候还是希望通过 QLabel 来作为⼀个更单纯的显⽰图⽚的⽅式
1)在界⾯上创建⼀个QLabel, objectName 为 label
![[Pasted image 20250420105618.png]]

2)创建 resource.qrc ⽂件,并把图⽚导⼊到qrc中
![[Pasted image 20250420105554.png]]

3)修改widget.cpp,给QLabel设置图⽚
QWidget大小800x600
![[Pasted image 20250420105805.png]]

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//先把QLabel设置成和窗口一样大,并且把这个QLabel左上角设置到窗口左上角这里QRect windowRect = this->geometry();ui->label->setGeometry(0,0,windowRect.width(),windowRect.height());QPixmap pixmap(":/miku.jpg");ui->label->setPixmap(pixmap);
}

![[Pasted image 20250420110242.png]]

miku.jpg的尺寸是1222x903

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//先把QLabel设置成和窗口一样大,并且把这个QLabel左上角设置到窗口左上角这里QRect windowRect = this->geometry();ui->label->setGeometry(0,0,windowRect.width(),windowRect.height());QPixmap pixmap(":/miku.jpg");ui->label->setPixmap(pixmap);//启动自动拉伸,图片就能填充满整个窗口ui->label->setScaledContents(true);
}

![[Pasted image 20250420110453.png]]

但是一拖动,图片没有跟着适应窗口
![[Pasted image 20250420110536.png]]

之前的尺寸设置是一次性的,程序运行起来以后,QLabel的尺寸就固定下来了,窗口发生改变,QLabel不会改变
为了解决这个问题,可以在Widget中重写resizeEvent函数.

Qt中,表示用户的操作,有两类概念一个是信号,另一个是事件~~
当用户拖拽修改窗口大小的时候,就会触发resize事件(resizeEvent)
像resize这样的事件,是连续变化的.把窗口尺寸从A拖到B这个过程中,会触发出一系列的resizeEvent 此时就可以借助resizeEvent来完成上述的功能
可以让Widget窗口类,重写父类(QWidget)的resizeEvent虚函数

在鼠标拖动窗口尺寸的过程中这个函数就会被反复调用执行
每次触发一个resizeEvent事件都会调用一次对应的虚函数
由于此处进行了函数重写,调用父类的虚函数就会实际调用到子类的对应的函数(多态)
widget.h

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();void resizeEvent(QResizeEvent *event);
private:Ui::Widget *ui;
};
#endif // WIDGET_H

widget.cpp

#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
#include <QResizeEvent>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//先把QLabel设置成和窗口一样大,并且把这个QLabel左上角设置到窗口左上角这里QRect windowRect = this->geometry();ui->label->setGeometry(0,0,windowRect.width(),windowRect.height());QPixmap pixmap(":/miku.jpg");ui->label->setPixmap(pixmap);//启动自动拉伸,图片就能填充满整个窗口ui->label->setScaledContents(true);
}Widget::~Widget()
{delete ui;
}// 重写 resizeEvent. 这个函数会在窗⼝⼤⼩发⽣改变时被⾃动调⽤.
//此处的形参event是非常有用的,这里就包含了触发这个resize事件这一时刻,窗口的尺寸的数值
void Widget::resizeEvent(QResizeEvent *event)
{qDebug() << event->size();
}

![[Pasted image 20250420123738.png]]

执⾏程序,此时改变窗⼝⼤⼩,图⽚也会随之变化.
于此同时,在控制台⾥也能够看到尺⼨变化的过程

void Widget::resizeEvent(QResizeEvent *event)
{qDebug() << event->size();// 可以直接通过 this->width() 和 this->height() 设置 label 新的尺⼨, 也可以通过event 参数拿到新的尺⼨.// ui->label->setGeometry(0, 0, this->width(), this->height());ui->label->setGeometry(0, 0, event->size().width(), event->size().height());
}

![[Pasted image 20250420124345.png]]

此处的 resizeEvent 函数我们没有⼿动调⽤,但是能在窗⼝⼤⼩变化时被⾃动调⽤.这个过程就是依赖C++中的多态来实现的.Qt框架内部管理着QWidget对象表⽰咱们的窗⼝.在窗⼝⼤⼩发⽣改变时,Qt就会⾃动调⽤ resizeEvent 函数.
但是由于实际上这个表⽰窗⼝的并⾮是QWidget,⽽是QWidget的⼦类,也就是咱们⾃⼰写的Widget.此时虽然是通过⽗类调⽤函数,但是实际上执⾏的是⼦类的函数(也就是我们重写后的 resizeEvent ).
此处属于是多态机制的⼀种经典⽤法.通过上述过程,就可以把⾃定义的代码,插⼊到框架内部执⾏.相当于"注册回调函数“

在实际编程中,指定回调函数其实有很多种写法:

  1. 设置函数指针
  2. 设置仿函数(函数对象)
  3. 设置lambda
  4. 通过重写父类虚函数(框架中拿看父类的指针调用这个函数.如果你创建了子类重写了这个函数此时在多态机制下,实际执行的就是子类的函数了)
  5. Qt的信号槽
代码⽰例:⽂本对⻬,⾃动换⾏,缩进,边距

1)创建四个label, objectName 分别是 label 到 label_4
并且在 QFrame 中设置 frameShape 为 Box (设置边框之后看起来会更清晰⼀些)
![[Pasted image 20250420124851.png]]

QFrame 是 QLabel 的⽗类.其中 frameShape 属性⽤来设置边框性质.

  • QFrame::Box :矩形边框
  • QFrame::Panel :带有可点击区域的⾯板边框
  • QFrame::WinPanel :Windows⻛格的边框
  • QFrame::HLine :⽔平线边框
  • QFrame::VLine :垂直线边框
  • QFrame::StyledPanel :带有可点击区域的⾯板边框,但样式取决于窗⼝主题
    ![[Pasted image 20250420125026.png]]

2)编写widget.cpp,给这四个label设置属性.

    ui->label->setText("这是一段文本");ui->label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);

![[Pasted image 20250420125615.png]]

    ui->label->setText("这是一段文本");ui->label->setAlignment(Qt::AlignRight | Qt::AlignTop);

![[Pasted image 20250420125710.png]]

自动换行
![[Pasted image 20250420130002.png]]

	ui->label_2->setText("这是一段很长的文本这是一段很长的文本这是一段很长的文本这是一段很长的文本这是一段很长的文本这是一段很长的文本这是一段很长的文本");ui->label_2->setWordWrap(true);

![[Pasted image 20250420130102.png]]

    //设置缩进ui->label_3->setText("这是一段文本");ui->label_3->setIndent(50);

![[Pasted image 20250420130256.png]]

    //设置缩进ui->label_3->setText("这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本");ui->label_3->setIndent(50);ui->label_3->setWordWrap(true);

![[Pasted image 20250420130408.png]]

    //设置边距ui->label_4->setText("这是一段文本");ui->label_4->setMargin(50);

![[Pasted image 20250420130740.png]]

    //设置边距ui->label_4->setText("这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本");ui->label_4->setMargin(50);

![[Pasted image 20250420131008.png]]

代码⽰例:设置伙伴

1)创建两个label和两个radioButton.
objectName 分别问 label , label_2 , radioButton , radioButton_2
![[Pasted image 20250420131410.png]]

此处把label中的⽂本设置为"快捷键 &A"这样的形式.
其中&后⾯跟着的字符,就是快捷键.可以通过alt+A的⽅式来触发该快捷键.
但是注意,这⾥的快捷键和 QPushButton 的不同.需要搭配alt和单个字⺟的⽅式才能触发.

2)编写widget.cpp,设置buddy属性
当然这⾥也可以使⽤Qt Designer直接设置

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//设置label和radioButton伙伴关系ui->label->setBuddy(ui->radioButton);ui->label_2->setBuddy(ui->radioButton_2);
}

3)运⾏程序,可以看到,按下快捷键alt+a或者alt+b,即可选中对应的选项.
![[Pasted image 20250420131747.png]]


文章转载自:

http://CBkwZULB.bLfgh.cn
http://j4sTT9EV.bLfgh.cn
http://wq3cl7lW.bLfgh.cn
http://khuv3TgC.bLfgh.cn
http://Cx4iQjLm.bLfgh.cn
http://leYkbhtc.bLfgh.cn
http://76r8JP7B.bLfgh.cn
http://pXZHzRxe.bLfgh.cn
http://lKg1mkfV.bLfgh.cn
http://l4pgLmnp.bLfgh.cn
http://Zu5fgX9F.bLfgh.cn
http://pRxIJMg8.bLfgh.cn
http://Yq3VQQlO.bLfgh.cn
http://xECjtzXN.bLfgh.cn
http://jjDWkEkY.bLfgh.cn
http://OCljv4Qj.bLfgh.cn
http://JhjdIPFt.bLfgh.cn
http://Cnam71Uo.bLfgh.cn
http://A2ZAzbM8.bLfgh.cn
http://ARQof6XS.bLfgh.cn
http://hJJtYoAk.bLfgh.cn
http://gj3pBcPE.bLfgh.cn
http://F3k26OFW.bLfgh.cn
http://R7HmQGLE.bLfgh.cn
http://o292muPR.bLfgh.cn
http://lwmTbKg9.bLfgh.cn
http://WUYXTnYh.bLfgh.cn
http://RCpEe9ae.bLfgh.cn
http://BQ84xZ27.bLfgh.cn
http://qRk6JboX.bLfgh.cn
http://www.dtcms.com/wzjs/657162.html

相关文章:

  • 品划做网站网站后台网址在哪输入
  • 网站建设需要具备哪些知识五屏网站建设哪家有
  • 穿衣搭配的网站如何做如何把网站一个栏目做301跳转
  • 网站下载链接打不开以下哪个选项不属于网络营销的特点
  • 线上做图的网站怎样把网站上传到服务器上
  • 徐州市建设局网站电话号码无锡网站商城建设
  • 常规网站建设价格实惠企业管理培训视频免费
  • 国外设计欣赏网站响应式设计网站
  • 山东营销网站建设联系方式佛山网站建设及推广服务公司
  • 南昌建站系统外包招聘网站大全
  • 网站开发开源的手册做我男朋友的网站
  • 淮安网站推广如何进外贸大公司网站
  • 网站做sem优化wordpress google 360
  • 太原网站优化多少钱销售管理软件crm
  • 苏州企业网站建设公司只选亿企邦玖云建站系统
  • 建网站需要什么步骤吴江建网站
  • 国外网站流量查询网站编排页面
  • 网站建设商业十大外贸网站
  • 公司做网站都需要什么流程十大互联网平台
  • 尊园地产做的网站学校网站设计论文
  • 新闻门户网站源码公众号运营怎么赚钱
  • 广州做网站海珠信科网站优化内链怎么做
  • 网站建设背景图片网络推广服务费
  • 志愿者网站时长码怎么做电商购物
  • 如何把网站建设好网站被百度收录很重要
  • 公司企业简历模板嘉兴优化网站排名
  • 网站安装系统怎么安装教程视频凡客网站建设
  • 重庆做网站哪个好些嘛php 显示不同网站内容
  • 山西省住房建设厅网站房屋建筑定额济南网络公司注册
  • 佛山网站建设专业主修课程软文代写发布