Qt通过样式表一键换皮肤 风格

样式表文件以qss为后缀

新建sample.qss文件

QMainWindow{
    //背景图
    background-image:url(:/image/test.jpg);
}

QPushButton{
    //背景色
    background-color: rgba(100, 225, 100, 30);
    //边框样式
    border-style:outset;
    //边框宽度
    border-width:4px;
    //边框圆角半径
    border-radius:10px;
    //边框颜色
    border-color: rgba(255, 255, 255, 30);
    //字体
    font:bold 14px;
    //字体颜色
    color:rgba(0, 0, 0, 100);
    //填衬
    padding:6px;
}
//鼠标悬停时
QPushButton:hover{
    background-color: rgba(100, 255, 100, 100);
    border-color: rgba(255, 255, 255, 200);
    color: rgba(0, 0, 0, 200);
}
//被按下时
QPushButton:pressed{
    background-color: rgba(100, 255, 100, 200);
    border-color: rgba(255, 225, 255, 30);
    border-style:inset;
    color: rgba(0, 0, 0, 100);
}


新建工程如下
Qt通过样式表一键换皮肤 风格_第1张图片

在主界面中添加按钮,并在其单击响应槽函数中添加如下代码

    QFile file(":/qss/sample.qss");
    file.open(QFile::ReadOnly);
    QString styleSheet = tr(file.readAll());
    qApp->setStyleSheet(styleSheet);


你可能感兴趣的:(qt)