python ui界面美化_Pyqt QSS简单的Ui美化

什么是QSS

QSS 是Qt StyleSheet 的简称,意思就是qt的样式表格,StyleSheet 可以像CSS一样的写样式。使页面美化跟代码层分开,利于维护。

QSS的语法

同css一样,他也是由一个selector与一个declaration形成,selector指定了是对哪一个控件发生后果,而declaration才是真实的发生作用的语句。如:

QPushButton{background-color:red}

QPushButton指定了是对所有的QPushButton或是其子类控件(如用户定义的MyPushButton)发生波及,而background-color:red阐明所有的受波及控件的背景都为red。除非“类名”,“对象名”,“Qt属性名”这三样东西是大小写敏感的外其余的东西都是大小写不敏感的,如color与Color代表统一属性。万一有几个selector指定了相像的declaration, 能够运用逗号(,各种绽放准绳驱动着ATM技巧不停变动,)将各个抉择器分离,如:

QPushButton, QLineEdit, QComboBox{color:blue}

他相当于:

QPushButton{color:red}QLineEdit{color:red}QComboBox{color:red}

declaration部份是一系列的(属性:值)对,使用分号(;)将各个不同的属性值对分离,使用大括号({})将所有declaration包括在同时。

1, 平常选择器(selector)

Qt扶持所有的CSS2定义的选择器,其祥细内容可以在w3c的网站上查找http://www.w3.org/TR/CSS2/selector.html, 中间对照常用的selector类别有:

1.1 通用类型选择器:*

会对所有控件有结果。

1.2 类别选择器:QPushButton

匹配所有QPushButton的实例和其子类的实例。

1.3 属性选择器:QPushButton[flat=”false”]

匹配所有QPushButton属性flat为false的实例,属性分为两种,静态的和动态的,静态属性可以通过Q_PROPERTY() 来指定,动态属性可以使用setProperty来指定,如:

QLineEdit *nameEdit = new QLineEdit(this);

nameEdit->setProperty("mandatoryField", true);

如果在设置了qss后Qt属性变动了,必要重新设置qss来使其见效,可以使用先unset再set qss。

1.4 类选择器:.QPushButton

所有QPushButton的实例,但不包括其子类,这相当于:

*[class~="QPushButton"]

~=的含义是测验一个QStringList类别的属性是否包罗给定的QString。

1.5 ID抉择器:QPushButton#okButton

对应Qt里面的object name设置,使用这条CSS之前要先设置对应控件的object name为okButton,如:

Ok->setObjectName(tr(“okButton”));

1.6 后代选择器:QDialog QPushButton

对于所有为QDialog后代(包括儿子,与儿子的儿子的递归)为QPushButton的实例

1.7 子选择器:QDialog > QPushButton

对于所有的QDialog直接子类QPushButton的实例,不包罗儿子的儿子的递归。

Pyqt4 examples里面也有关于QSS的例子: 路径:

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值