• 使用QSS动态更换皮肤简单举例 狼人:


    最近在看QSS的内容,觉得真是一个十分好用的东西,特来做了一个小例子和大家一起学习下。
    通过QSS可以实现动态更换QT程序的外观。具体QSS的内容请看QT皮肤(QSS)编程,这里有QSS的详细介绍。
    下面我主要通过一个小例子说明下如何动态变换皮肤的功能。
    首先,先创建一个test.qss文件,放置在程序目录下,文件内容如下:

    QPushButton {
    color:red;
    background
    -color:#FFFFFF
    }

    具体含义就是设置QPushButton字体颜色为red,背景颜色为#FFFFFF
    接着,我们创建一个QPushButton的对象,当点击这个button时,就加载这个QSS文件,具体代码如下:

    void MainWindow::loadStyleSheet()
    {
    QFile qss("test.qss");
    qss.open(QFile
    ::ReadOnly);
    qApp->setStyleSheet(qss.readAll());
    qss.close();
    }

    void MainWindow::on_pushButton_clicked()
    {
    loadStyleSheet();
    }

    最后,就可以看一下效果了,点击按钮,按钮的字体颜色和背景颜色就变化了。而你如果想让他变成不同的颜色,只需要修改一下qss文件就可以了,如果你想给按钮加上背景颜色,也只需修改修改qss文件,是不是相当的方便?下面这个是我通过修改qss给程序的窗口加上了一个背景。

    不需要写任何的代码,只要将qss文件的内容改为如下:

    QMainWindow{
    background
    :url(./Screenshot-1.png)
    }
    QPushButton
    {
    color
    :red;
    background-color
    :#aaaaaa
    }

    当然以上只是一个小小的例子,只是为了展示qss的功能,更加丰富的内容需要大家自己去尝试。

  • 相关阅读:
    第51月第8天 nsdata分割
    第50月第25天 TestFlight不可用
    第50月第16日 licode libnice owt
    第50月第13天 webrtc抗丢包与带宽自适应
    第50月第12天 LiveVideoStack
    第50月第3天 webrtc fec
    第49月第29天 WebRTC GN构建工具的使用
    第49月第20天 在Mac OS X上.dylib和.so之间的区别
    iOS开发总结(A0)- make table view more responsive
    iOS开发总结(A0)- block基础知识
  • 原文地址:https://www.cnblogs.com/waw/p/2156686.html
Copyright © 2020-2023  润新知