QSS:Qt Style Sheets

简介

QSS和CSS一样 通过样式表控制控件和容器的样式,采用QSS可以很容易的实现换肤和美化界面的功能

创建QSS文件

在帮助里搜索qt style,可以打开qss的使用例子

这里写图片描述

QApplication,
QMainWindow, QFrame, QDockWidget, QDialog, QFileDialog, QMessageBox,
QRadioButton,
QGroupBox::title, /* Need to set background becase must clear border behind label */
QMenuBar, QMenu, QMenu::item,
QComboBox QAbstractItemView,
QTreeView, QListWidget, QListView, QTableWidget, QTableView,
QTextEdit, QTextBrowser {
    background-color: #3c3f41; /*#004100;*/
    color: #bbbbbb;
}

加载QSS

  • 代码中加载

把qss文件添加到资源里,然后加载到程序。代码如下

    QApplication app(argc, argv);

    QFile file(":/dracula.css");
    if( file.open(QFile::ReadOnly))
    {
        QString styleSheet = QLatin1String(file.readAll());

        app.setStyleSheet(styleSheet);
        file.close();

    }
    else
    {

        QMessageBox::warning(NULL, "warning", "Open failed", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);

    }

##效果
这里写图片描述

  • 启动时加载
    .exe -stylesheet /*.qss

注意事项

QFile打开文件时候很容易写错路径,少加或者多加前缀,最简单的办法就是打开资源编译后的qrc_*.cpp,搜索资源名字,ok,就是这个
这里写图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐