You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt中CSS :active伪状态的替代方案相关问题咨询

Qt 按钮伪状态样式设置方案

核心伪状态对应规则

Qt QSS 伪状态和标准CSS的逻辑存在差异:

  • 标准CSS的:active在Qt QSS中同样存在,仅对应鼠标按压按钮的瞬时状态
  • 你需要的Tab/方向键选中的键盘焦点状态,Qt中对应的伪状态为:focus

可用QSS代码示例

/* 适配键盘Tab/方向键选中的焦点状态 */
#calcButton:focus {
    background-color: rgb(255, 0, 0);
    /* 如果需要隐藏默认焦点虚线框,可添加下行 */
    outline: none;
}

/* 若需同时覆盖鼠标按压状态,补充如下规则 */
#calcButton:active {
    background-color: rgb(255, 0, 0);
}

原有代码不生效的常见排查点

  • 状态匹配错误:原有代码仅匹配鼠标按压状态,不会响应键盘焦点选中
  • 优先级冲突:若存在其他作用于该按钮的QSS规则,可添加!important强制生效,例:background-color: rgb(255, 0, 0) !important;
  • 控件标识不匹配:确认按钮的objectName属性确实设置为calcButton,Qt 对objectName大小写敏感

内容的提问来源于stack exchange,提问作者Paul Laporte

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 02:30:03