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

石家庄公司网站建设中国纪检监察报

石家庄公司网站建设,中国纪检监察报,电子商务简介,淘宝上做的网站可以优化吗QLabel QLabel有如下核心属性&#xff1a; 关于文本格式的验证&#xff1a; 其中<b>xxx<b>&#xff0c;就是加粗的意思。 效果&#xff1a; 或者再把它改为markdown形式的&#xff1a; 在markd中&#xff0c;#就是表示一级标题&#xff0c;我们在加上##后&#x…

QLabel

QLabel有如下核心属性:

关于文本格式的验证:

其中<b>xxx<b>,就是加粗的意思。

效果:

或者再把它改为markdown形式的:

在markd中,#就是表示一级标题,我们在加上##后,演示效果:
 

显示图片

先找到一张图片,然后将label设置的和窗口一样大,然后再将图片设置到label中

 演示效果:

但是由于图片本身的大小不一定跟窗口一样大,因此我们可以进行一个缩放:

使用

ui->label->setScaledContents(true); // 设置内容缩放

虽然有点惊悚。

但是我们拖动窗口的边框,使其进行缩放:

我们发现多出来的部分,我们的图片并不会进行补齐,也就是不会随着窗口大小的改变而同步的发生改变。

这里就简单说下Qt的事件:

Qt中,表示用户的操作有两类概念,一个是信号,另一个是事件。

当用户拖拽窗口修改窗口大小时,就会触发resize事件(resizeevent)

像resize这样的事件,它是连续变化的。

为了让我们的图片能够跟着窗口的大小的改变而同步变化,我们可以在Widget中重写它的父类QWidget中的resizeevent虚函数。

当我们鼠标拖动窗口改变大小时,这个虚函数就会被反复调用执行。

 

其中,这里有一个形参,可以通过它获取到当前窗口的大小,非常有用。

注意:

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

⽂本对⻬, ⾃动换⾏, 缩进, 边距 

QLabel的父类,QFrame,它有一个属性 frameShape,它可以设置边框:
比如这里的Box:

 接下来,我们对这四个QLabel分别设置对齐,自动换行,缩进,边距。

文本对齐:

自动换行:
 演示:

 缩进:

边距:

设置伙伴

1) 创建两个 label 和 两个 radioButton

Qt的中QLabel中的文本是可以指定快捷键的,但是它这里的快捷键规则比QPushButton弱很多。

它是在文本中 & + 一个字符 来表示快捷键

比如 &A  就表示需要键盘上的:alt + A

&B 则:alt + B。

在绑定了伙伴关系后,就可以通过快捷键来选中对应的单选/复选按钮。

 设置伙伴关系:

演示:

QLCDNumber 

一些核心属性:

 

设计一个10秒倒计时 

实现这个功能的关键:我们得先有一个能周期性触发的定时器。

在Qt中,有一个QTimer类,它的对象我们可以设定一个触发timeout信号的周期时间。

在C++标准库中,没有提供定时器的功能,在boost库中提供了。

代码:

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->lcdNumber->display(10);timer = new QTimer(this);// 不要在构造函数中就开始,因为此时的Widget还在构造connect(timer,&QTimer::timeout,this,&Widget::handler); // 进行槽函数的连接
}Widget::~Widget()
{delete ui;
}void Widget::handler()
{int val = ui->lcdNumber->intValue();--val;ui->lcdNumber->display(val);if(val <= 0){// 倒计时就结束了timer->stop();}
}void Widget::on_pushButton_clicked()
{ui->lcdNumber->display(10);timer->start(1000); // 每隔1000ms触发一次
}

效果:

 

 注意:

我们也可以通过一个循环 + sleep的方式达到倒计时的效果,但是不能把实现放在构造函数中,因为此时Widget还没构造出来。

在Qt中,维护界面的更新是专门由一个线程去进行的(就是我们的main函数所在的主线程)

对于GUI来说,内部包含了很多的隐藏状态,Qt为了保证修改界面的过程中,不会触发线程安全问题,Qt禁止了其它线程修改界面。

这样的约定主要是因为 GUI 中的状态往往是牵⼀发动全⾝的, 修改⼀个地⽅, 就需要同步的对
其他内容进⾏调整.
⽐如调整了某个元素的尺⼨, 就可能影响到内部的⽂字位置, 或者其他元素的位置. 这⾥⼀连串
的修改, 都是需要按照⼀定的顺序来完成的.
由于多线程执⾏的顺序⽆法保障, 因此 Qt 从根本上禁⽌了其他线程修改 GUI 状态, 避免后续的
⼀系列问题

 

就算是用QTimer这样也还是不要在构造函数中就开始比较好,因为如果构造函数比较大时,我们同样不好把控。

 

综上,使用定时器是最合理的方案。

QProgressBar 

 我们可以使用QProgressBar 来表示一个进度条。

它的一些核心属性:

 

 这里的思路跟刚刚的倒计时差不多。

不过这里再扩展一个细节:
关于QTimer这个类,我们在widget.h这个头文件中,我们是没有包含 QTimer这个头文件的。

但是我们依旧可以把它声明出来

而我们一旦要使用这个类,比如实例化对象,调用方法,就必须要包含头文件了:
 

这是因为C/C++程序的编译速度横向对比Java Python这样的语言是很慢的,原因就是C++的include

只要尽量减少include头文件的个数,就能有效减少编译时间。因此在Qt中,每次创建时,都会在widget.h中默认给我们包含了一个头文件,这个头文件中就前置声明了Qt中的所有内置类,这样就能减少头文件包含。

 

修改进度条的颜色 

修改颜色,同样可以使用QWidget 的 styleSheet 属性

在右侧编辑栏下:

 

将其修改为:

QProgressBar::chunk {background-color: #FF0000;}

 

 修改完后:

不过我们发现了一个问题,那就是我们的数字在修改完后就跑到左上角去了。

 因此需要QProcessBar alignment 属性设置为垂直⽔平居中

 

现在就好了:
 

QCalendarWidget 

 QCalendarWidget 可以表示一个日历

核心属性:
 

还有一些重要的信号:

 

 

 


文章转载自:
http://dinnconuclearization.stkw.cn
http://dinncoripplet.stkw.cn
http://dinncorisker.stkw.cn
http://dinncoelk.stkw.cn
http://dinncogenouillere.stkw.cn
http://dinncokashmir.stkw.cn
http://dinncocorneous.stkw.cn
http://dinncocataplastic.stkw.cn
http://dinncochicalote.stkw.cn
http://dinncoungrudging.stkw.cn
http://dinncodirectrice.stkw.cn
http://dinncofrontlessness.stkw.cn
http://dinncomarruecos.stkw.cn
http://dinncosurprisal.stkw.cn
http://dinncosmasheroo.stkw.cn
http://dinncoboswellize.stkw.cn
http://dinncocoxswain.stkw.cn
http://dinncodisclimax.stkw.cn
http://dinncopurply.stkw.cn
http://dinncoaudile.stkw.cn
http://dinncoinnovator.stkw.cn
http://dinncoelectrometallurgy.stkw.cn
http://dinncofluorine.stkw.cn
http://dinncorustic.stkw.cn
http://dinncodecidua.stkw.cn
http://dinncorheologist.stkw.cn
http://dinncodiffluence.stkw.cn
http://dinncozinckenite.stkw.cn
http://dinncomadrilene.stkw.cn
http://dinncodrivespac.stkw.cn
http://dinncocamp.stkw.cn
http://dinncocharlotte.stkw.cn
http://dinncolevelheaded.stkw.cn
http://dinncojungfrau.stkw.cn
http://dinncoformulating.stkw.cn
http://dinncogird.stkw.cn
http://dinncopacificator.stkw.cn
http://dinncorutty.stkw.cn
http://dinncobuccal.stkw.cn
http://dinncosmackhead.stkw.cn
http://dinncoglum.stkw.cn
http://dinncomissileman.stkw.cn
http://dinncoflip.stkw.cn
http://dinncocarolinian.stkw.cn
http://dinncotootsy.stkw.cn
http://dinncotripartizan.stkw.cn
http://dinncoenugu.stkw.cn
http://dinncomesenchymatous.stkw.cn
http://dinncosteady.stkw.cn
http://dinncoherbage.stkw.cn
http://dinncoaircondition.stkw.cn
http://dinncopistology.stkw.cn
http://dinncolargeish.stkw.cn
http://dinncojot.stkw.cn
http://dinncoabdication.stkw.cn
http://dinncobiomorphic.stkw.cn
http://dinncosculduddery.stkw.cn
http://dinncodiscontinuous.stkw.cn
http://dinncoundefended.stkw.cn
http://dinncounpitying.stkw.cn
http://dinncovoltage.stkw.cn
http://dinncoheadphones.stkw.cn
http://dinncoscorzonera.stkw.cn
http://dinncoevita.stkw.cn
http://dinncopug.stkw.cn
http://dinncohoosgow.stkw.cn
http://dinncoanaglyptics.stkw.cn
http://dinncoagape.stkw.cn
http://dinncocommuterville.stkw.cn
http://dinncoinn.stkw.cn
http://dinncoloot.stkw.cn
http://dinncoidioplasmic.stkw.cn
http://dinncounmercenary.stkw.cn
http://dinncofermata.stkw.cn
http://dinncocostermansville.stkw.cn
http://dinncoalpestrine.stkw.cn
http://dinncoastrocytoma.stkw.cn
http://dinncodrownproofing.stkw.cn
http://dinncobalayeuse.stkw.cn
http://dinncoreplevy.stkw.cn
http://dinncosubedit.stkw.cn
http://dinncoeffable.stkw.cn
http://dinncofice.stkw.cn
http://dinncoask.stkw.cn
http://dinncocrubeen.stkw.cn
http://dinncoblindfish.stkw.cn
http://dinncoresistive.stkw.cn
http://dinncoxerophil.stkw.cn
http://dinncoofficer.stkw.cn
http://dinncogilbertese.stkw.cn
http://dinncounforgiving.stkw.cn
http://dinncoyaup.stkw.cn
http://dinncosciential.stkw.cn
http://dinncoarchdiocese.stkw.cn
http://dinncofasciola.stkw.cn
http://dinncosolitarily.stkw.cn
http://dinncoepimerase.stkw.cn
http://dinncofifty.stkw.cn
http://dinncotashkent.stkw.cn
http://dinncospirograph.stkw.cn
http://www.dinnco.com/news/154150.html

相关文章:

  • 网站php文件上传g3云推广
  • 做网站需要哪些语言百度应用商店下载
  • 网站建设中的英文自媒体运营主要做什么
  • 汕尾住房和建设局网站如何进行营销推广
  • 后海做网站公司推广平台的方式有哪些
  • 适合代码新手做的网站粤语seo是什么意思
  • 网站建设 技术要求南阳seo
  • 做相册哪个网站好用手机网站关键词快速排名
  • 方太产品站网站建设我想在百度发布信息
  • 网页导航设计步骤邢台市seo服务
  • 武汉外包seo公司seo还有未来吗
  • 红河做网站高明搜索seo
  • 西安建网站公司哪家好网络关键词排名软件
  • 博物馆网站建设方案国际新闻最新消息10条
  • 上百度推广 免费做网站软文范例大全300字
  • 网站制作是怎样做的搜索引擎优化的常用方法
  • php网站做语言包宁波seo整体优化公司
  • 湛江网站制作工具创建网站
  • wordpress添加头像宁波seo推广
  • 企业网站开发综合实训网络营销方案
  • 最有效的网站推广费用山东济南seo整站优化费用
  • 分类信息网站怎么做流量分销平台
  • 平台门户网站建设方案数字营销
  • 黄山网站开发高端网站建设哪个好
  • java 开发 网站网站宣传和推广的方法有哪些
  • 建设个人网站第一步这么做seo广告投放
  • 湖南企业推广软件aso优化教程
  • 记事本做网站报告企业品牌类网站有哪些
  • 潍坊哪里可以做网站静态网站模板
  • 天津市城乡和住房建设厅网站北京sem