- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Qt入门-Style Sheet样式表与2D绘图.pptx
特化程度计算方法 选择器 特化程度计算 * {} a=0 b=0 c=0 - specificity = 0 LI {} a=0 b=0 c=1 - specificity = 1 UL LI {} a=0 b=0 c=2 - specificity = 2 UL OL+LI {} a=0 b=0 c=3 - specificity = 3 H1 + *[REL=up]{} a=0 b=1 c=1 - specificity = 11 UL OL LI.red {} a=0 b=1 c=3 - specificity = 13 LI.red.level {} a=0 b=2 c=1 - specificity = 21 #x34y {} a=1 b=0 c=0 - specificity = 100 样式层叠 Qt样式表单可以在Qapplication上设置,或者在父窗口上设置,或者直接在子控件上设置。最底层子控件的样式表是将所有其祖先或者Qapplication的样式表单合并起来,作为其最终的样式表单。 当合并后冲突发生时,子控件自身的样式表单总是要优先于其父类、祖类的样式表单,父类的样式表单优于祖类……以此类推。 样式层叠 例如,当我们通过QApplication设置全局样式表单时,所有的QPushButton的字体都变成白色: qApp-setStyleSheet( QPushButton { color: white }); 当我们再设置一个特定按钮的字体颜色时: myPushButton-setStyleSheet( * { color: blue }); 该样式将覆盖Qapplication对该按钮的设定。 样式继承 在CSS中,子类的样式可以从父类中继承下来,但是在Qt样式规则中,子QWidget是不会从父QWidget中继承样式表的。 例如,架设一个QPushButton在QGroupBox内,则我们在QApplication中设置QGroupBox的样式表: qApp-setStyleSheet( QGroupBox { color: red; } ); Qt入门 Style Sheet和2D绘图 Style Sheet样式表单 Qt的样式表单允许我们在对程序不做任何代码上的更改的情况下轻松改变应用程序的外观。 其思想来源于网页设计中的CSS(Cascading Style Sheet),即可以将功能设计和美学设计分开。 它的语法和概念和HTML CSS也是差不多的。 基本语法 样式表单由一系列样式规则组成。每条规则可以分成两部分:选择器和声明 QPushButton { color: red } 选择器表示规则作用到哪些控件上;声明则详细说明了是什么规则。 这条规则让所有的按钮的字体都变成红色。 选择器(selector) 声明(declaration) 基本语法 Qt的样式表语法不区分大小写,所以color,Color,coLor,coloR都表示同样的颜色属性。 但是指代类的类名的时候,是区分大小写的。 多个选择器可以并列使用,它们之间用逗号隔开,例如: QPushButton, QLineEdit, QComboBox { color: red } 基本语法 声明部分也可以有多个并列,之间用分号隔开。当我们要设置的选择器有多个属性的时候,就需要并列多个声明,例如: QPushButton { color: red; background-color: white } 这条样式规则让按钮的字体变成红色,同时背景色变成白色。 选择器类别 Qt样式表单支持所有在CSS2中定义的选择器类型,下面介绍几种最为常用的选择器定义。 选择器 例子 作用 全局选择器 * 选中所有的Widget 特定类型选择器 QPushButton 选中所有QPushButton以及它派生出来的子类的对象 属性选择器 QPushButton[flat=false] 选中所有flat属性为false的按钮 选择器类别 属性选择器 可用于Qt中所有具有toString方法的属性,例如QPushButton的text、checked等属性。 class属性略有特殊,它不代表一个类的具体属性,它表示类名。 当属性是一个QStringList时,可以用~=这个符号来匹配其中的某一项。 因为属性往往是动态的,当属性更改了的时候,需要调整样式表,通常做法是删除样式表,再重新加载 选择器类别 选择器 例子 作用 类选择器 .QPushButton 选中所有QPushButton的对象,但不包括其子类 ID选择器 QPush
文档评论(0)