QT学习记录-按钮设置不同自定义状态的背景图

#ifndef STYLEMODEL_H
#define STYLEMODEL_H

#include <QObject>
#include <QString>
#include <QMap>
#include <QPushButton>
class StyleModel
{
   
public:
    StyleModel()
    {
   
    }
    static StyleModel *getInstance();
    void append(QPushButton *button, QString style1, QString style2);
    void setNoStyle(int no);
private:
    QMap<QPushButton*,QString> m_style1;
    QMap<QPushButton*,QString> m_style2;
};


#endif // STYLEMODEL_H



                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过设置每个QToolBox::Tab的QSS样式来实现为每个选项卡设置不同背景图片。具体步骤如下: 1. 给QToolBox设置一个自定义样式表 ```cpp ui->toolBox->setStyleSheet("QToolBox{ background-color: white; }"); ``` 2. 给每个选项卡设置不同的QSS样式 ```cpp QStringList styleList = { "QToolBox::tab:first {border-image: url(:/images/tab1.png);}", "QToolBox::tab:last {border-image: url(:/images/tab2.png);}", "QToolBox::tab:selected {border-image: url(:/images/tab3.png);}" }; for (int i = 0; i < ui->toolBox->count(); ++i) { ui->toolBox->setItemText(i, QString::number(i)); // 设置选项卡标题 ui->toolBox->setItemIcon(i, QIcon(":/images/icon.png")); // 设置选项卡图标 ui->toolBox->setItemToolTip(i, QString("Tab %1").arg(i)); // 设置选项卡提示 ui->toolBox->tabBar()->setTabButton(i, QTabBar::RightSide, nullptr); // 隐藏选项卡右侧的关闭按钮 if (i < styleList.count()) { ui->toolBox->tabBar()->setStyleSheet(styleList.at(i)); } } ``` 其中,`styleList`中的每个元素对应一个选项卡的QSS样式,可以根据需要自行修改。 3. 在资源文件中添加图片资源 在.pro文件中添加以下代码,将图片资源添加到资源文件中: ```cpp RESOURCES += \ images.qrc ``` 在项目中新建一个.qrc文件,添加以下代码: ```xml <RCC> <qresource prefix="/images"> <file>tab1.png</file> <file>tab2.png</file> <file>tab3.png</file> <file>icon.png</file> </qresource> </RCC> ``` 其中,`tab1.png`、`tab2.png`、`tab3.png`和`icon.png`是需要使用的图片文件,可以替换成自己需要的图片。 这样,就可以为每个选项卡设置不同背景图片了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值