Tkinter单选按钮未选中状态下Hover时外观异常的原因咨询
Tkinter单选按钮未选中状态下Hover时外观异常的原因咨询
我目前用的是Python 3.11.10搭配Spyder 6.0.2。
我搞不清这是代码问题、Spyder 6.0.2平台的问题,还是Python版本的小故障,或者其他什么原因。运行程序时,单选按钮在鼠标悬停时会改变外观,但我根本没写任何和hover相关的代码。如果选中其中一个选项,整个按钮组就会恢复到我想要的样式,之后未选中的按钮再被鼠标悬停也不会有异常了。这个情况只在没有任何选项被选中的时候出现——也就是按钮初始化、无选项选中的状态。这肯定是某种小问题,但我在网上搜了一圈都没找到原因。
以下是部分单选按钮的代码:
drivewheelbut = tkinter.IntVar(value=0) drivewheel1 = tkinter.Radiobutton(master=cstfrm, variable=drivewheelbut, value=1, bg="#b2b4b7", takefocus=False) drivewheel1.place(height=20, x=502, y=450) drivewheel1.configure(bg="#292d2e") drivewheel2 = tkinter.Radiobutton(master=cstfrm, variable=drivewheelbut, value=2, bg="#b2b4b7", takefocus=False) drivewheel2.place(height=20, x=502, y=470) drivewheel2.configure(bg="#292d2e") drivewheel3 = tkinter.Radiobutton(master=cstfrm, variable=drivewheelbut, value=3, bg="#b2b4b7", takefocus=False) drivewheel3.place(height=20, x=502, y=490) drivewheel3.configure(bg="#292d2e") drivewheel4 = tkinter.Radiobutton(master=cstfrm, variable=drivewheelbut, value=4, bg="#b2b4b7", takefocus=False) drivewheel4.place(height=20, x=502, y=510) drivewheel4.configure(bg="#292d2e") drivewheellbl1 = tkinter.Label(master=cstfrm, text="FWD", bg="#292d2e", fg="#b2b4b7") drivewheellbl1.place(x=522, y=450) drivewheellbl2 = tkinter.Label(master=cstfrm, text="RWD", bg="#292d2e", fg="#b2b4b7") drivewheellbl2.place(x=522, y=470) drivewheellbl3 = tkinter.Label(master=cstfrm, text="AWD", bg="#292d2e", fg="#b2b4b7") drivewheellbl3.place(x=522, y=490) drivewheellbl4 = tkinter.Label(master=cstfrm, text="4WD", bg="#292d2e", fg="#b2b4b7") drivewheellbl4.place(x=522, y=510)
其他单选按钮的写法都是完全一样的。
现象截图
未Hover时的单选按钮状态:

Hover后的单选按钮状态:

我还发现这个现象只出现在包含四个单选按钮的组里,那种只有两个按钮的组(比如自动/手动选项)就不会有这个问题,哪怕代码写法完全一致。
有没有人知道这到底是怎么回事?
备注:内容来源于stack exchange,提问作者AFrazier
相关产品推荐
相关产品推荐

