前言
不知道是只有我遇到了,還是qt本身就存在這個bug
當將2個qradiobutton放入到一個布局內,然后進行來回切換,若無數據刷新的情況下,切換無異常,當窗體內有數據開始刷新了,則點擊其中一個qradiobutton,另外一個未被選中的樣式會變為淡藍色,有些電腦上能看出來,有些電腦可能因為色差問題,會不明顯,但問題肯定是存在的。
環境
vs2019+qt5.15.1
windows11
對比圖片
上方為正常時候顯示樣式,下方為異常情況,右側明顯有一個淡藍色背景未清除,鼠標重新放入,會自動清除。
這個通過網上資料進行查找,很多人說是由于刷新問題導致的,我試過進行repaint,update,都不會將這個清除。
我想既然鼠標移入會自動清除,那么是不是焦點的問題,所以設置了setfocus,依然無效。如果進行縮放窗體也能恢復,但這個來回縮放不知道會產生什么其他bug,所以果斷放棄。
解決方案
我想這有可能就是qt本身存在的bug吧,所以想要樣式保持不變,只能放棄官方的qradiobutton,改為自定義窗體,qradiobutton無非就是一個icon加一個qlabel,所以自己寫了一個radio button,再次進行點擊,來回點擊測試后,bug消除了。