Qt 类型编辑实例-指定QPushButton 菜单指示器的子控制

 

作者:丁林松,讲师。

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

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);
        }

郑重声明:资讯 【Qt 类型编辑实例-指定QPushButton 菜单指示器的子控制】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——