前言
不知道是只有我遇到了,还是qt本身就存在这个bug
当将2个qradiobutton放入到一个布局内,然后进行来回切换,若无数据刷新的情况下,切换无异常,当窗体内有数据开始刷新了,则点击其中一个qradiobutton,另外一个未被选中的样式会变为淡蓝色,有些电脑上能看出来,有些电脑可能因为色差问题,会不明显,但问题肯定是存在的。
环境
vs2019+qt5.15.1
windows11
对比图片
上方为正常时候显示样式,下方为异常情况,右侧明显有一个淡蓝色背景未清除,鼠标重新放入,会自动清除。
这个通过网上资料进行查找,很多人说是由于刷新问题导致的,我试过进行repaint,update,都不会将这个清除。
我想既然鼠标移入会自动清除,那么是不是焦点的问题,所以设置了setfocus,依然无效。如果进行缩放窗体也能恢复,但这个来回缩放不知道会产生什么其他bug,所以果断放弃。
解决方案
我想这有可能就是qt本身存在的bug吧,所以想要样式保持不变,只能放弃官方的qradiobutton,改为自定义窗体,qradiobutton无非就是一个icon加一个qlabel,所以自己写了一个radio button,再次进行点击,来回点击测试后,bug消除了。