tkinter checkbutton 不同的图像

joo*_*oi1 3 python styles tkinter ttk

我想要一个 tkinter 检查按钮,它基本上有我自己的打开和关闭图像,所以不是默认的检查按钮。我在互联网上搜索了解决方案,但找不到任何东西。我认为 ttk 样式可能可行,但我不确定如何

尝试更改检查按钮中的 selectimage 选项,但它完全没有任何作用

编辑:将 Indicatoron 设置为 false,然后更改图像并选择图像有效

Bry*_*ley 10

您需要设置image未选中状态的选项和selectimage选中状态的选项。您还需要设置indicatoron为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()
Run Code Online (Sandbox Code Playgroud)

截屏