RadioButton
Загальний синтаксис
<ім'я_віджета> = Radiobutton(<ім'я вікна>,<параметри>)
Змінити властивість мітки або будь-якого іншого віджета можна так:
ім'я_віджета["ім'я_властивості"] = значення
Також можна скористатись методом config():
ім'я_віджета.config(ім'я_властивості = значення)
Властивості віджета
width: Ширина радіо-кнопки.
height: Висота радіо-кнопки.
text: Текст на радіо-кнопці.
bg: Фон радіо-кнопки.
fg: Колір тексту.
bd: Ширина кордону радіо-кнопки.
activebackground: Колір фону (коли радіо-кнопка натиснута).
activeforeground: Колір тексту (коли радіо-кнопка натиснута).
disabledbackground: Колір фону (коли властивість state == DISABLED).
disabledforeground: Колір тексту (коли властивість state == DISABLED).
state: Стан радіо-кнопки (NORMAL, DISABLED).
compound: Розташування картинки на радіо-кнопці (CENTER, BOTTOM, LEFT, RIGHT, TOP).
justify: Вирівнювання тексту.
relief: Рельєф радіо-кнопки (FLAT, GROOVE, RIDGE, SUNKEN, RAISE).
overrelief: Рельєф радіо-кнопки коли над нею знаходиться курсор (FLAT, GROOVE, RIDGE, SUNKEN, RAISE).
image: Ім'я, яку буде відображено на радіо-кнопці.
selectimage: Ім'я, яку буде відображено на радіо-кнопці (коли вона обрана).
font: Вид шрифту на радіо-кнопці.
indicatoron: Стиль відображення радіо-кнопки (якщо true, то буде показуватися гурток поруч з радіо-кнопкою, інакше немає).
value: Значення, яке буде присвоюватися змінної, зазначеної в параметрі variable при виборі радіо-кнопки.
variable: Ім'я змінної, у якій буде зміняться значення на зазначене у властивості value при виборі радіо-кнопки.
Методи:
set(значення1)-
get()-
Приклад :
from tkinter import *
def change():
if var.get() == 0:
label['bg'] = 'red'
elif var.get() == 1:
label['bg'] = 'green'
elif var.get() == 2:
label['bg'] = 'blue'
window = Tk()
var = IntVar()
var.set(0)
rd1 = Radiobutton(text="Червоний",variable=var, value=0)
rd1.pack()
rd2 = Radiobutton(text="Зелений",variable=var, value=1)
rd2.pack()
rd3 = Radiobutton(text="Синій", variable=var, value=2)
rd3.pack()
button = Button(text="Задати", command=change)
button.pack()
label = Label(width=20, height=10)
label.pack()
window.mainloop()