Hi,欢迎来到嵌入式培训高端品牌 - 华清远见教育科技集团<北京总部官网>,专注嵌入式工程师培养15年!
当前位置: > 华清远见教育科技集团 > 嵌入式学习 > 讲师博文 > Qt 类型编辑实例-指定QPushButton 菜单指示器的子控制
Qt 类型编辑实例-指定QPushButton 菜单指示器的子控制
时间:2016-12-30作者:华清远见

子控提供了访问子子元素的功能, 例如通常的时候一个按钮将会管理一个菜单,

QPushButton#evilButton::menu-indicator {
        image: url(myindicator.png);
        }

同时如果美化一个按钮的话, 那么将可以通过定位符来确定美化按钮的路径, 通常可以是一个图片。

QPushButton::menu-indicator {
                image: url(myindicator.png);
                subcontrol-position: right center;
                subcontrol-origin: padding;
                left: -2px;
        }

经过以上的设置那么QPushButton 将会在方格的中心显示一个myindicator.png 的图片。

复杂的选择区域的例子:

当应对于一个用户可可编辑可输入的部件的时候, 将需要设计到用户选择区域的颜色设置, 与类型设置, 下面将通过使用QLineEdit 部件来进行演示:

QLineEdit { color: red }

QLineEdit{color:red}
QLineEdit[readOnly="true"]{color:gray}

在团队开发的时候, 需要设计到不同颜色的设置, 或者说不同类型的设置, 那么就需要在样式编辑当中有多种选择, 将不需要的那部分, 注释掉:

QLineEdit { color: red }

QLineEdit[readOnly="true"] { color: gray }
#registrationDialog QLineEdit { color: brown }

自定义制定的部件

这个部分提供了一些自定义特殊部件的某种样式

定制QAbstractScrollArea

比如说一些QAbstractScrollArea 类, 例如 QTextEdit 与QTextBrowser . 同时可以使用后台的属性来进行设置。 例如来设置一个 背景图片。

QTextEdit, QListView {
                background-color: white;
                background-image: url(draft.png);
                background-attachment: scroll;
        }

下面的代码是让背景图片与可浏览的区域大小相同:

QTextEdit, QListView {
                background-color: white;
                background-image: url(draft.png);
                background-attachment: fixed;
        }

给QCheckBox 做样式

QCheckBox 与QRadioButton 具有想色的属性, 他们之间的不同时QCheckBox是返回当前的状态:

QCheckBox {
                spacing: 5px;
        }

QCheckBox::indicator {
                width: 13px;
                height: 13px;
        }

QCheckBox::indicator:unchecked {
                image: url(:/images/checkbox_unchecked.png);
        }

QCheckBox::indicator:unchecked:hover {
                image: url(:/images/checkbox_unchecked_hover.png);
        }

QCheckBox::indicator:unchecked:pressed {
                image: url(:/images/checkbox_unchecked_pressed.png);
        }

QCheckBox::indicator:checked {
                image: url(:/images/checkbox_checked.png);
        }

QCheckBox::indicator:checked:hover {
                image: url(:/images/checkbox_checked_hover.png);
        }

QCheckBox::indicator:checked:pressed {
                image: url(:/images/checkbox_checked_pressed.png);
        }

QCheckBox::indicator:indeterminate:hover {
                image: url(:/images/checkbox_indeterminate_hover.png);
        }

QCheckBox::indicator:indeterminate:pressed {
                image: url(:/images/checkbox_indeterminate_pressed.png);
        }

发表评论
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)