关于QPushButton的问题 hover press我用setStyleSheet为一个QPushButton贴了一个背景图片

但是,当点了按钮之后,会出现虚线框~~~ 这样看起来就很丑,不逼真了,我不希望这个虚线框出现,
有什么好的解决方法吗?
————————————————————————————
这一组按钮(6个按钮,垂直排列),实现如下效果以及解决方案:
程序启动后按钮的形状:

__________________________
当鼠标指向按钮时的形状:
__________________________
当选中了按钮时的形状:
实现效果的代码:
bt->setFocusPolicy(Qt::NoFocus);//设置无聚焦~避免出现虚线框~//需要注意的是,尝试过CSS语法 border-style:none不能满足对应的要求。
//border-image为程序启动后默认的背景
//pressed为按下后的图片
//hover为鼠标指向时的按钮图片
//当然,还有选中后的图片~这个就自行处理了
bt->setStyleSheet("QPushButton{border-image:url(:/img/submit.jpg);font-size:24px;} QPushButton:hover:pressed{border-image:url(:/img/add.jpg);font-size:24px;} QPushButton::hover:!pressed{border-image:url(:/img/browse.jpg);font-size:24px;}");

但是,当点了按钮之后,会出现虚线框~~~ 这样看起来就很丑,不逼真了,我不希望这个虚线框出现,
有什么好的解决方法吗?
————————————————————————————
这一组按钮(6个按钮,垂直排列),实现如下效果以及解决方案:
程序启动后按钮的形状:

__________________________
当鼠标指向按钮时的形状:
__________________________
当选中了按钮时的形状:
实现效果的代码:bt->setFocusPolicy(Qt::NoFocus);//设置无聚焦~避免出现虚线框~//需要注意的是,尝试过CSS语法 border-style:none不能满足对应的要求。
//border-image为程序启动后默认的背景
//pressed为按下后的图片
//hover为鼠标指向时的按钮图片
//当然,还有选中后的图片~这个就自行处理了
bt->setStyleSheet("QPushButton{border-image:url(:/img/submit.jpg);font-size:24px;} QPushButton:hover:pressed{border-image:url(:/img/add.jpg);font-size:24px;} QPushButton::hover:!pressed{border-image:url(:/img/browse.jpg);font-size:24px;}");
本文详细介绍了如何使用Qt框架为QPushButton设置背景图片,并通过CSS样式实现按钮在不同状态下的视觉变化,避免了虚线框的显示。具体包括程序启动后、鼠标悬停时以及被按下时的样式调整。
2180

被折叠的 条评论
为什么被折叠?



