📜  Python|如何动态更改 Checkbutton 的文本

📅  最后修改于: 2022-05-13 01:55:04.402000             🧑  作者: Mango

Python|如何动态更改 Checkbutton 的文本

Tkinter 是一个 GUI(图形用户界面)模块,用于创建各种类型的应用程序。它与Python一起提供,由各种类型的小部件组成,可用于使 GUI 更具吸引力和用户友好性。 Checkbutton 是用于选择多个选项的小部件之一。

Checkbutton 可以按如下方式创建:

chkbtn = ttk.Checkbutton(parent, value = options, ...)

代码#1:

# This will import tkinter and ttk
from tkinter import * from tkinter import ttk
  
root = Tk()
  
# This will set the geometry to 200x100
root.geometry('200x100')
  
text1 = StringVar()
text2 = StringVar()
  
# These text are used to set initial
# values of Checkbutton to off
text1.set('OFF')
text2.set('OFF')
  
chkbtn1 = ttk.Checkbutton(root, textvariable = text1, variable = text1,
                          offvalue = 'GFG Not Selected',
                          onvalue = 'GFG Selected')
  
chkbtn1.pack(side = TOP, pady = 10)
chkbtn2 = ttk.Checkbutton(root, textvariable = text2, variable = text2,
                          offvalue = 'GFG Average',
                          onvalue = 'GFG Good')
chkbtn2.pack(side = TOP, pady = 10)
  
root.mainloop()

输出 #1:当您运行应用程序时,您会看到 Checkbutton 的初始状态,如输出所示。

输出#2:一旦你选择了检查按钮,你就会看到文本已经改变,就像输出一样。

输出 #3:当您取消选择Checkbutton 时,您将再次观察到以下变化。

代码 #2:命令可以与 Checkbutton 集成,可以在根据条件选择或取消选择 checkbutton 时执行。

# Importing tkinter, ttk and
# _show method to display
# pop-up message window
from tkinter import * from tkinter import ttk
from tkinter.messagebox import _show
  
root = Tk()
root.geometry('200x100')
  
text1 = StringVar()
text1.set('OFF')
  
# This function is used to display
# the pop-up message
def show(event):
    string = event.get()
    _show('Message', 'You selected ' + string)
  
chkbtn1 = ttk.Checkbutton(root, textvariable = text1, variable = text1,
                          offvalue = 'GFG Good',
                          onvalue = 'GFG Great',
                          command = lambda : show(text1))
chkbtn1.pack(side = TOP, pady = 10)
  
root.mainloop()

输出:

注意:以上代码中offvalueonvalue分别用于设置Checkbutton的非选中状态和选中状态的值。