GUI

Python Tkinter widgets 基本的なウィジェット(5) Radiobutton

互いに排他的な複数の選択肢から1つのみを選択できるボタン。チェックボタンと異なり、ラジオボタンは常にセットで使用され、複数のラジオボタンウィジェットが1つの選択肢またはプリファレンスに関連付けられる。

s = StringVar()
a = ttk.Radiobutton(parent, text='a', variable=s, value='a')
b = ttk.Radiobutton(parent, text='b', variable=s, value='b')
c = ttk.Radiobutton(parent, text='c', variable=s, value='c')

ラジオボタンの設定項目は、チェックボタンとほとんど同じ。違うのは、onvalueとoffvalueのオプションが1つのvalueオプションに置き換えられていること。

セット内の各ラジオボタンは、同じリンク先の変数を持つが、値が異なる。(変数が一致する値を保持している場合、そのラジオボタンは選択されていることを視覚的に示す。一致しない場合、そのラジオボタンは非選択となる。)

リンク先の変数が存在しない場合、または変数オプションで指定しない場合、ラジオボタンは「tristate」として表示される。これはalternateフラグで確認できる。