QT:控件样式设置误区

当我设置不同控件格式样式,原先的代码如下

复制代码
    //设置MainWindow的背景R颜色
    this->setStyleSheet("QMainWindow{background-color:#F5F8FD;}");
    //设置菜单栏字体和背景颜色
    this->setStyleSheet("QMenuBar{color:#FFFFFF;background-color:#2A579A;}");
    //设置QTextEdit的背景颜色和圆角半径
    this->setStyleSheet("QTextEdit{background-color:#FFFFFF;border-radius:15px;}");

我发现最后只实现了QTextEdit的样式

原来是在 Qt 中,当你使用 setStyleSheet 方法为控件或窗口设置样式表时,需要注意的是每次调用 setStyleSheet 都会替换掉之前设置的样式。也就是说,如果你连续多次调用 setStyleSheet 来设置不同的样式,只有最后一次调用的样式会被应用。

改之后的代码

复制代码
    this->setStyleSheet(
        "QMainWindow{background-color:#F5F8FD;}"
        "QMenuBar{color:#FFFFFF;background-color:#2A579A;}"
        "QTextEdit{background-color:#FFFFFF;border-radius:15px;}"
    );
相关推荐
丷丩2 分钟前
MapLibre GL JS第47课:添加动画图标
javascript·gis·动画·mapbox·maplibre
独泪了无痕8 分钟前
Vue3中防御XSS攻击的“特效药”-DOMPurify
前端·vue.js·安全
小小199219 分钟前
idea 配置less转化为css
前端·css·less
hhb_61821 分钟前
Less嵌套避坑:优先级冲突实战解析
前端·css·less
快乐的哈士奇25 分钟前
【Next.js实战①】Gmail API 按柜号检索邮件:OAuth 双 Cookie 与搜索 Fallback
开发语言·javascript·ecmascript
云水一下31 分钟前
Vue.js从零到精通系列(五):全局状态管理——Pinia 核心与实践
前端·javascript·vue.js
我不是外星人39 分钟前
浅谈我对 AI 发展的看法
前端·ai编程·claude
kmblack11 小时前
javascript计算年龄
开发语言·javascript·ecmascript
甲维斯1 小时前
测一波Kimi K2.7,消耗一周配额!
前端·人工智能·游戏开发
Dick5071 小时前
ROS2 多机器人通用 Driver 层复盘:BaseRobotDriver 到多平台 Mock 切换实现
前端·javascript·机器人