qss

 添加qss到qrc文件中


========qss换肤==============

void mountWindows::slotStyleChange()//定义换肤槽
{
    QString StyleString;
    StyleString=underlineBox->currentText();
    if(StyleString=="皮肤1")
    {
        QFile file(":/qss/abc.qss");
        file.open(QFile::ReadOnly);
        styleSheet = QLatin1String(file.readAll());
        qApp->setStyleSheet(styleSheet);
        file.close();
    }
    else if(StyleString=="皮肤2")
    {
        QFile file(":/qss/style2.qss");
        file.open(QFile::ReadOnly);
        styleSheet = QLatin1String(file.readAll());
        qApp->setStyleSheet(styleSheet);
        file.close();
    }
    else if(StyleString=="系统默认")
    {
        QFile file(":/qss/no.qss");
        file.open(QFile::ReadOnly);
        styleSheet = QLatin1String(file.readAll());
        qApp->setStyleSheet(styleSheet);
        file.close();
    }
    this->close();     //关闭对话窗口
}
 





06-14
### QSS表格alternative样式示例及使用方法 QSS(Qt Style Sheets)是Qt框架中用于定制控件外观的样式表机制,类似于HTML中的CSS。通过QSS可以轻松地修改Qt控件的颜色、字体、边框等属性。对于表格控件(如`QTableView`或`QTableWidget`),可以通过设置特定的样式规则来实现交替行颜色的效果(即`alternate`样式)。以下是具体实现方法和示例代码[^1]。 #### 设置交替行颜色 在QSS中,`QTableView`支持`alternate-background-color`属性,用于定义交替行的背景颜色。以下是一个简单的QSS样式定义: ```css QTableView { alternate-background-color: #f0f0f0; /* 交替行的颜色 */ background-color: #ffffff; /* 默认行的颜色 */ selection-background-color: #d1d1d1; /* 选中行的背景颜色 */ gridline-color: #cccccc; /* 网格线的颜色 */ } ``` 将上述QSS应用到`QTableView`实例时,表格会自动显示交替行颜色效果。需要注意的是,`QTableView`的`setAlternatingRowColors(true)`方法必须被调用以启用交替行功能[^2]。 #### 示例代码 以下是一个完整的Python代码示例,展示如何在`QTableView`中使用QSS设置交替行样式: ```python from PyQt5.QtWidgets import QApplication, QTableView, QAbstractItemView from PyQt5.QtCore import Qt app = QApplication([]) # 创建一个QTableView实例 table_view = QTableView() table_view.setAlternatingRowColors(True) # 启用交替行颜色 # 应用QSS样式 table_view.setStyleSheet(""" QTableView { alternate-background-color: #f0f0f0; background-color: #ffffff; selection-background-color: #d1d1d1; gridline-color: #cccccc; } """) # 设置表格为不可编辑模式 table_view.setEditTriggers(QAbstractItemView.NoEditTriggers) # 显示表格 table_view.resize(600, 400) table_view.show() app.exec_() ``` #### 注意事项 - 如果未调用`setAlternatingRowColors(true)`,即使设置了`alternate-background-color`属性,也不会生效。 - `QTableWidget`也支持类似的QSS样式,但需要确保其父类的样式规则正确应用。 - 在复杂场景下,可能需要结合模型视图机制调整数据展示逻辑[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值