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;}"
    );
相关推荐
cyadyx1 小时前
Vite 比 Webpack 构建效率更高
前端·webpack·node.js·vite
mCell3 小时前
AI 时代 SVG 画图的潜力
前端·agent·svg
我命由我123458 小时前
CesiumJS 笔记 - 获取容器中心点、Cartesian3 clone 方法、修改 Cartesian3 对象的高度
前端·javascript·css·前端框架·html·html5·js
Hopebearer_9 小时前
页面突然只剩 DOM?一次静态资源版本错配排查
前端·部署
抱抱宝9 小时前
Agent-study项目教程(03):手写 Mini-ReAct Agent(不依赖框架)
javascript·人工智能·gpt·react.js·prompt·agent
东风破_10 小时前
ESLint 是什么?为什么你的项目需要它?
前端·后端·代码规范
用户9385156350710 小时前
Next.js 笔记系统(二):Redis 数据服务与侧边栏组件拆分实战
javascript·全栈
圣殿骑士-Khtangc11 小时前
Go字符串高效拼接性能对比与底层原理分析
服务器·前端·golang
BigTopOne12 小时前
【ijkplayer】 硬解码流程
前端
kyriewen12 小时前
DeepSeek Harness开源第一天我就上手了——和Claude Code的差距比想象中大
前端·ai编程·deepseek