程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

偷偷学习qt 样式,然后写出惊艳所有人的界面

发布于2021-04-09 07:17     阅读(405)     评论(0)     点赞(13)     收藏(5)


QT样式表

 qt样式表主要受到css的启发,通过调用QWidget:: setStyleSheet() 或 QApplication::setStyleSheet()来设置样式,也可以在界面的样式表中直接填写。

盒子模型(the Box Model)

 学习样式之前我们要先了解盒子模型,也是最基本的样式:

  • content  为最内部的矩形,通常是绘制文子、图片的地方。
  • padding 负责指定填充操作,主要是窗口部件内容,与边缘线(border)之间的空隙,它可以用top 、right、bottom、left 设置它的大小。
  • border 认为是窗口的外边框、你可把它当成门框。
  • margin 最外边的矩形,主要负责边缘区域,与窗口部分的距离。

如果没有指定它们四个,默认是4个重合在一起。

 我们来使用最简单布局,看看效果。

 对应样式表:

  1. QLineEdit
  2. {
  3. border:5px solid gray;
  4. border-radius: 10px;
  5. padding: 10 10 10 20px;
  6. background: yellow;
  7. selection-background-color: blue;
  8. }

这里先可以不要理解其它的东西,后面会有对应表,上图中我们选中的字体,就是content 内容,padding 部分就是 参数上,右,底,左的方式,简单记住顺时针方式。border,就是上面灰色部分,我们可以修改 padding最后一个参数为30,看看效果。

我们可以看到明显的向右移动内容。这下有关盒子模型基本都了解了吧,

QSS基本写法:

selector {property: value}

 举例:

  1. QLineEdit
  2. {
  3. background:yellow;
  4. }

多个选择器可以并列使用,它们之间用逗号隔开。

QPushButton,QLineEdit, QComboBox{ color: red }

如果是指定莫个选择器中的单独一个控件:

  1. QLineEdit#lineEdit
  2. {
  3. background:yellow;
  4. }

其中 lineEdit 是对应的一个对象,我们常用# 加对象名字。

对应状态:

selectorstatus {property: value}

举例,当鼠标移动button上时候,颜色变成红色:

  1. QPushButton:hover
  2. {
  3. color:red;
  4. }

子控件,当控件里面有子控件可以这样用:

  1. QComboBox::drop-down
  2. {
  3. }

下面是常用的属性表:

属性说明
background在一个声明中设置所有的背景属性
background-color设置元素的背景颜色。
background-image

用于背部图片,可用于background-color添加透明度,QFrame{background-image: url(:/images/xxx.png);  }

background-repeat

无论是否指定重复的填充背景图片,用于盒模式,在没有指定的时候会(x,y)方向开始重复,使用方式

background-repeat:repeat-y;  延Y的背景图片。

background-position在盒子模型中指定位置图片的开始,background-position:bottom left; 显示在左下角开始显示
background-attachment描述背景图片是否在QAbstractScrollArea 的区域跟滚动条滚动,fixed是图片不跟滚动条
background-clip规定背景的绘制区域。
background-origin规定背景图片的定位区域。
background-size规定背景图片的尺寸。

常见的border 属性:

border设置部件的外框线
border-top简单设计部件上部的外框线
border-right 简单设计部件右部的外框线
border-bottom简单设计部件底部的外框线
border-left简单设计部件左部的外框线
border-color设计部件外框线的颜色
border-top-color设计部件上部的外框线颜色
border-right -color设计部件右部的外框线颜色
border-bottom-color设计部件底部的外框线颜色
border-left-color设计部件左部的外框线颜色
border-image设置4个角位置的image
border-radius外框线的角度
border-top-left-radius左上角的弧度
border-top-right-radius右上角的弧度
border-bottom-left-radius左下角的弧度
border-bottom-right-radius右下角的弧度
border-style设置四条边框的样式。
border- top-style这里top 可以写成 left bottom right,表示对应部分的样式
border-width设置边框的宽度值

常用的font属性:

font在一个声明中设置所有字体属性。
font-family字体集
font-size文本字体大小
font-style文本样式
font-weight文本字体的磅数

目前暂时记录到这里,后期有时间给大家继续更新,qt样式,让我们写出来更加漂亮的界面。




所属网站分类: 技术文章 > 博客

作者:西门费雪

链接:http://www.qianduanheidong.com/blog/article/58529/2616c38af687f2bfdb53/

来源:前端黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

13 0
收藏该文
已收藏

评论内容:(最多支持255个字符)