建设银行网站一直打不开,做外贸要开通哪个网站,软件下载网站如何履行安全管理,常州做沙滩旗的公司网站1样式表介绍
样式表可通过 QApplication::setStyleSheet()函数将其设置到整个应用程序上#xff0c;也可以使用 QWidget::setStyleSheet()将其设置到指定的部件或子部件上#xff0c;不同级别均可设置样式表#xff0c;称为样式表的层叠。样式表也可通过设计模式编辑样…1样式表介绍
样式表可通过 QApplication::setStyleSheet()函数将其设置到整个应用程序上也可以使用 QWidget::setStyleSheet()将其设置到指定的部件或子部件上不同级别均可设置样式表称为样式表的层叠。样式表也可通过设计模式编辑样式表
2样式表语法
1样式规则
选择器{属性 1值 1属性 2值 2属性 3值 3}, 如QPushButton{background:blue;color:yello},此规则指定了QPushButton及它的子类使用蓝色做背景色,黄色做前景色,
样式表中一般不区分大小写,但类名、对象名及 Qt 属性名区分大小写。
声明中有多组属性用 ; 隔开
2选择器类型 3子部件
对于一些复杂的部件修改样式可能需要访问它们的子部件如QComboBox的下拉按钮QSpinBox的向上、向下箭头灯。 如 下拉按钮设置图片属性 QComboBox::drop-down{image:url(dropdown.png)}
4伪状态
4伪状态 ①选择器可以包含为状态来限制规则在部件的指定状态上的应用。伪状态在选择器之后用冒号隔离。如 鼠标悬停在按钮上时被应用 QPushButton:hover{color:white} 鼠标不悬停在按钮上时被应用(!表否定) QPushButton:!hover{color:white}
②伪状态可多个连用达到逻辑与效果。如 鼠标悬停在一个被选中的QCheckBox部件上时才应用规则 QCheckBox:hover:checked{color:white}
③伪状态可通过逗号达到逻辑或效果。如 QCheckBox:hover,checked{color:white}
④伪状态和子部件联合使用。如 QComboBox::drop-down:hover{image:url(dropdown_bright.png)}
5冲突解决(越特殊优先级越高)
几个样式规则对相同的属性指定不同的值时会产生冲突。如 QPushButton#okButton{color:gray} QPushButton{color:red} 冲突原则特殊的选择器优先。此例中QPushButton#okButton代表的是单一对象而不是一个类的所有实例所以okButton的文本颜色会是灰色的。同样的有伪状态的比没有伪状态的优先。
①层叠 样式表设置在QApplication上、父部件上或子部件上。部件有效的样式表示通过部件的祖先样式表和QApplication上的样式表合并得到的当发生冲突时部件自己的样式表优先于任何继承的样式表。
②继承 当使用Qt样式时部件并不会自动从父部件继承字体和样色样式设置。如一个QPushButton包含在一个QGroupBox中这里对QGroupBox设置样式表 qApp-setStyleSheet(“QGroupBox{color:red;}”);
但没有对QPushButton设置样式表这是QPushButton会使用系统颜色而不会继承QGroupBox的颜色如果想要QGroupBox的颜色设置到其子部件上可以这样 qApp-setStyleSheet(“QGroupBox,QGroupBox*{color:red;}”)
③设置QObject属性 从Qt4.3开始任何可设计的Q_PROPERTY都可以使用“qproperty-属性名称”语法来设置样式表。如 MyLabel{qproperty-pixmap:url(pixmap.png);} MyGroupBox{qproperty-titleColor:rgb(100,200,100);}QPushButton{qproperty-iconSize:20px20px;}
6盒子模型
使用样式表时每个部件被看作拥有4个同心矩形的的盒子四个矩形的内容分别为内容 content、填衬padding、边框border、边距margin。边距、边框宽度和填衬等,属性的默认值都是0这样四个矩形正好重叠。
7设计模式下设置样式表
①右键单击部件选择“改变样式表”然后进行样式的编辑。 ②部件属性区选择styleSheet也可进行样式的设置。
3代码
1代码实现 //设置样式 设置黄色背景色//ui-pushButton-setStyleSheet(background:yellow);//设置前景色,此方式在设置前景色时会覆盖背景色// ui-pushButton-setStyleSheet(color:red);//同时设置按钮前景色和背景色setStyleSheet(QPushButton{background:blue;color:yello});//设置滑动条背景色ui-horizontalSlider-setStyleSheet(background:yellow);2ui设计模式下实现
注意:如在主窗口 右键-改变样式表 如设置QPushButton那所有的QPushButton都会改变样式,如只设置一个按钮,先单击再右键