Tkinter : 선택시 라디오 버튼 전경색
Aug 19 2020
내가 갖고 싶은 Radiobutton
움푹 들어간 버튼 모양으로 표시했습니다.
- 선택하지 않으면 흰색 배경에 검은 색 텍스트,
- 선택하면 진한 회색 배경에 흰색 텍스트가 표시됩니다.
현재는 회색 배경 만 있지만 선택하면 흰색 텍스트가 없어 대비가 좋지 않습니다.

for (lbl, val) in [("A", "a"), ("B", "b"))]:
rb = tk.Radiobutton(tab,
text=lbl,
variable=v,
value=val,
command=select,
selectcolor=gray,
indicatoron=0,
width=25, pady=7.5)
rb.pack(...)
tk.Radiobutton
selectcolor
선택할 때 배경색 인 구성 옵션이 있지만 선택하면 전경색에 대해 그러한 옵션을 제공하지 않는 것 같습니다.
나는 하나가 지정하여이를 달성 할 수 있다고 생각 command
합니다 선택 트리거 그 라디오 버튼에 선택되어 있지만, 오히려 내가 찾은 그들이 설정 한 변수의 단지 값보다 외부에서 자신을 라디오 버튼의 속성에 액세스 필요 지금까지 할 방법이 없습니다.rb.config
foreground
라인을 따라 옵션을 어떻게 얻을 수 selectforeground
있습니까?
답변
1 Atlas435 Aug 19 2020 at 16:08
이를 위해 익명 기능 을 사용하십시오 .
import tkinter as tk
def select(rb):
rb.config(foreground='white')
for rb_ in rbs:
if rb_ != rb:
rb_.config(fg='black')
root = tk.Tk()
rbs=[]
def do_buttons():
for _ in range(11):
v=tk.IntVar()
val = 1
rb = tk.Radiobutton(root,
text="A",
variable=v,
value=val,
selectcolor='gray',
indicatoron=0,
width=25, pady=7.5)
rb.config(command=lambda arg=rb:select(arg))
rb.pack()
rbs.append(rb)
b = tk.Button(root, text='click', command=do_buttons)
b.pack()
root.mainloop()