Qt之QSS文件

来自:http://hi.baidu.com/lesley_gyn/blog/item/84282dc7582cd14f0eb345c4.html

通过文件定义qss
1  将QSS代码写入.qss文件中;(calendar.qss)

2  在qrc中加入该.qss文件;
3  在代码中进行读取使用

    QFile file(":/calendar.qss");
    file.open(QFile::ReadOnly);
    QString styleSheet = QLatin1String(file.readAll());

    qApp->setStyleSheet(styleSheet);
    file.close();


通过代码直接设置qss
QPushButton* myPushButton;
myPushButton->setStyleSheet("* { color: blue }");
myPushButton->setStyleSheet("color: blue");

参考: http://www.meego.com/thread-607-1-1.html  QSS编程语法
 

 虽然Qt现在还不是特别完善,但它的跨平台性,界面重用性,已经表现出比mfc更强的、更好的性能,昨天写了qss样式表demo,但是在书上对样式表的使用,并不详细,初学者可能会遇到一些问题,今天对照官方代码,终于调通,简单记录如下:

    1、建立文本文件,写入样式表内容,更改文件后缀名为qss;

    2、在工程中新建资源文件*.qrc,将qss文件加入资源文件qrc中,此处注意prefix最好为"/",否则在调用qss文件时会找不到文件;

    3、通过传入路径/文件名的方式创建一个QFile对象,以readonly的方式打开,然后readAll,最后qApp->setStyleSheet就可以使qss生效。

    样式表的方式可以很方便的完成简单的贴图工作,而且效果也不错,简化了我以前在mfc上为了贴图,不得不重写控件类个工作,也使得美工可以很方便的修改生成的程序的颜色。

    当今年4月初的时候,NOKIA收购了Qt,并推出了Qt4.2,当时并没有太注意,而当mfc开发的界面不能满足我的时候,我才去研究这个新的技术。

    Qt很爽,因为是C++语言,所以看起来很快,预计在明年一月底,我就可以完全掌握,而且也因为是C++代码级跨平台,所以也获得了很高的执行效率。而它生成控件的方式则比mfc上的资源文件好得多,mfc中的窗体资源全部在一个.src文件中,不利于重用,而Qt中每个窗体拥有自己的资源文件,并且和窗体类是分开的,方便了重用。从此,我不在被局限于windows平台。

    我会研究一下如何在应用程序中完成widget部件的使用,因为那种透明、随意拖拽的自定义部件必将是下一代UI主流。

  1. QApplication app(...);
  2. QFile qss("stylesheet.qss");
  3. qss.open(QFile::ReadOnly);
  4. app.setStyleSheet(qss.readAll());
  5. qss.close();
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值