Tkinter Checkbutton другое изображение - PullRequest
0 голосов
/ 25 октября 2019

Я хочу кнопку проверки tkinter, которая в основном имеет свои собственные изображения для включения и выключения, поэтому не кнопка по умолчанию. Я искал в Интернете решение, но ничего не смог найти. Я думаю, что это могло бы быть возможно со стилем ttk, но я не уверен, как

попытался изменить опцию selectimage в кнопке проверки, которая абсолютно ничего не сделала

edit: превращение индикатора в false, затем изменение изображения и выбор изображения работает

1 Ответ

0 голосов
/ 25 октября 2019

Вам необходимо установить параметр image для невыбранного состояния и параметр selectimage для выбранного состояния. Вам также нужно установить indicatoroff на False, чтобы tkinter не отображал индикатор по умолчанию.

Вот простой пример:

import tkinter as tk
root = tk.Tk()

on_image = tk.PhotoImage(width=48, height=24)
off_image = tk.PhotoImage(width=48, height=24)
on_image.put(("green",), to=(0, 0, 23,23))
off_image.put(("red",), to=(24, 0, 47, 23))

var1 = tk.IntVar(value=1)
var2 = tk.IntVar(value=0)
cb1 = tk.Checkbutton(root, image=off_image, selectimage=on_image, indicatoron=False,
                     onvalue=1, offvalue=0, variable=var1)
cb2 = tk.Checkbutton(root, image=off_image, selectimage=on_image, indicatoron=False,
                     onvalue=1, offvalue=0, variable=var2)

cb1.pack(padx=20, pady=10)
cb2.pack(padx=20, pady=10)

root.mainloop()

screenshot

...