qt代码优化之styleSheet

大家都知道,如果想给控件加样式的话就得用到setStyleSheet这个函数,还需要用到事件过滤函数eventFilter来进行状态不同的切换,这样写的有一个不好的地方,那就是代码很臃肿,有个解决办法就是用QSS。

1.首先写一个QSS文件,里面主要用到的就是CSS语句,语法是#类名#控件类#对象名:状态

#MasWidget>QPushButton#smallButton
{
    border-image: url(:/img/minBut.png);
}
#MasWidget>QPushButton#smallButton:hover
{
    border-image: url(:/img/minButRoll.png);
}
#MasWidget>QPushButton#smallButton:pressed
{
    border-image: url(:/img/minButUp.png);
}

2.然后在.pro文件中加入qss文件,语法是OTHER_FILES += app.qss

3.最后就是在程序里面调用了,最好是写在main函数里面

QFile style("app.qss");
if(!style.open(QIODevice::ReadOnly))
{
    qDebug("open app.qss no!");
    return;
}
app->setStyleSheet(style.readAll());

这样做的话,不仅节省了很多代码,而且程序也更清晰明了,样式与功能就很巧妙的分开了。

 

来源:http://blog.sina.com.cn/s/blog_671732440100wtjm.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值