属性——图片、图标、颜色、文本、边距、填充属性
1、color:用于呈现文本的颜色。如果未设置此属性,则默认值为QWidget :: foregroundRole设置的值(通常为黑色)。
2、selection-background-color:所选文本或项目的背景。如果未设置此属性,则默认值是为调色板的Highlight角色设置的值。例:
QTextEdit { selection-background-color: darkblue }
3、selection-color:所选文本或项目的前景。如果未设置此属性,则默认值是为调色板的HighlightedText角色设置的值。例:
QTextEdit { selection-color: white }
4、icon:图标,暂时只支持QPushButton。(加上qproperty-前缀才管用)从Qt5.15开始使用的属性。
5、icon-size:图标尺寸。以下控件可以使用此属性:
- QCheckBox
- QListView
- QPushButton
- QRadioButton
- QTabBar
- QToolBar
- QToolBox
- QTreeView
例:
QPushButton
{
qproperty-icon: url(:/D:/a.png);
icon-size: 500px 500px;
}
6、image:在子控件的内容矩形中绘制的图像。使用与QIcon相同的算法确定绘制的实际图像(即,图像从不放大,但在必要时始终按比例缩小)。如果指定了svg,则图像将缩放为内容矩形的大小。在子控件上设置image属性会隐式设置子控件的宽度和高度(除非SVG中的图像)。此属性仅用于子控件。例:
QSpinBox::down-button {
image: url(:/D:/a.png)
}
7、image-position:图片位置,仅用于子控件。例:
QSpinBox::down-button {
image: url(:/D:/a.png);
image-position:bottom right;
}
8、text-align:文本和图标的对齐方式。例:
QPushButton
{
qproperty-icon: url(:/D:/a.png);
icon-size: 500px 500px;
text-align:left;
}
9、text-decoration:文本附加属性。
- none:无
- underline:下划线
- overline:上划线
- line-through:删除线
10、margin:部件的边距。如果未指定此属性,则默认为0。
例:
QLineEdit { margin: 2px }
11、margin-top、margin-right、margin-bottom、margin-left:各个边的边距。
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QT嵌入式开发,Quick模块等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓
12、padding:小部件的填充宽度。如果未指定此属性,则默认为0。例:
QLineEdit { padding: 3px }
13、padding-top、padding-right、padding-bottom、padding-left:各个边的填充宽度。
属性类型的一些知识点
1、设置盒子模式相关颜色类的属性可以一次设置多个方向的,顺序为上、右、下、左。如果未指定左侧颜色,则将其与右侧颜色相同。 如果未指定底色,则将其与顶色相同。 如果未指定正确的颜色,则该颜色应与顶部的颜色相同。例如:
QLabel { border-color: red } /* red red red red */
QLabel { border-color: red blue } /* red blue red blue */
QLabel { border-color: red blue green } /* red blue green blue */
QLabel { border-color: red blue green yellow } /* red blue green yellow */
2、盒子模式尺寸相关的属性也有类似的规则:
QLabel { border-width: 1px } /* 1px 1px 1px 1px */
QLabel { border-width: 1px 2px } /* 1px 2px 1px 2px */
QLabel { border-width: 1px 2px 3px } /* 1px 2px 3px 2px */
QLabel { border-width: 1px 2px 3px 4px } /* 1px 2px 3px 4px */
3、颜色设置可以有多种方式:
QLabel { border-color: red } /* opaque red */
QLabel { border-color: #FF0000 } /* opaque red */
QLabel { border-color: rgba(255, 0, 0, 75%) } /* 75% opaque red */
QLabel { border-color: rgb(255, 0, 0) } /* opaque red */
QLabel { border-color: rgb(100%, 0%, 0%) } /* opaque red */
QLabel { border-color: hsv(60, 100%, 100%) } /* opaque yellow */
QLabel { border-color: hsva(240, 255, 255, 75%) } /* 75% blue */
QLabel { border-color: hsl(60, 100%, 50%) } /* opaque yellow */
QLabel { border-color: hsla(240, 255, 50%, 75%) } /* 75% blue */
4、颜色、背景等可以设置为渐变类型:QT绘图:渐变 这个用来设置窗口背景是不错用法。
- qlineargradient:线性渐变。
- qradialgradient:辐射渐变。
- qconicalgradient:锥形渐变。
QWidget
{
background: qlineargradient(x1:0, y1:0, x2:1, y2:1,
stop:0 white, stop: 0.4 gray, stop:1 green)
}
QWidget
{
background: qconicalgradient(cx:0.5, cy:0.5, angle:30,
stop:0 white, stop:1 #00FF00)
}
焦点在(0,0)
QWidget
{
background: qradialgradient(cx:0, cy:0, radius: 1,
fx:0, fy:0, stop:0 white, stop:1 green)
}
焦点在(0.5,0.5):
QWidget
{
background: qradialgradient(cx:0, cy:0, radius: 1,
fx:0.5, fy:0.5, stop:0 white, stop:1 green)
}
5、颜色类的属性可以为QWidget的QPalette的部分调色板角色的颜色。实用QPalette
支持设置如下角色:
- alternate-base
- base
- bright-text
- button
- button-text
- dark
- highlight
- highlighted-text
- light
- link
- link-visited
- mid
- midlight
- shadow
- text
- window
- window-text
例:
QPushButton { color: palette(dark); }
6、border-radius等相关类似的属性可以设置2个值。如果仅指定一个值,则将其用作定义角的四分之一圆的半径。 如果指定了两个值,则第一值是四分之一椭圆的水平半径,而第二值是垂直半径。
QPushButton{
border-radius:60px;
}
QPushButton{
border-radius:60px 10px;
}
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QT嵌入式开发,Quick模块等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓
原文链接:https://blog.csdn.net/kenfan1647/article/details/115533310