qt如何设置控件的disabled的颜色

qt中关于设置颜色
[url]http://blog.sina.com.cn/s/blog_9d16de810100zs6r.html[/url]


使用QPalette类来实现;
使用qss来实现。
1.使用QPalette类来实现
以为QComboBox例子
QComboBox *m_pComboBox =new QComboBox;
QPalette palette=m_pComboBox -palette();
palette.setColor(QPalette ::Disabled,QPalette::Text,Qt::red);
m_pComboBox -setPalette(palette);
如此设置后:
当这个m_pComboBox被设置为Disable时候;(m_pComboBox-setEnabled(false);)
Text的颜色会变为红色。
如果你有大量的QComboBox需要设置出这个效果,不妨自己继承QComboBox做一个子类;
只需要修改构造函数,加入如下代码即可。
QPalette palette=this-palette();
palette.setColor(QPalette ::Disabled,QPalette::Text,Qt::red);
this-setPalette(palette);
2.使用qss来实现
如果不想继承QComboBox那么还可以使用qss来设置。
编写一个myqss.qss文件,其内容为:
QComboBox:disabled{color:red;}在main.cpp中加入如下代码:
QFile qss(myqss.qss);
qss.open(QFile::ReadOnly);
qApp-setStyleSheet(qss.readAll());这时候一样能达到以上效果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值