📜  Python Tkinter – 检查按钮小部件

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

Python Tkinter – 检查按钮小部件

Python为开发 GUI(图形用户界面)提供了多种选择。在所有的 GUI 方法中,Tkinter 是最常用的方法。它是Python随附的 Tk GUI 工具包的标准Python接口。带有 Tkinter 的Python是创建 GUI 应用程序的最快和最简单的方法。使用 Tkinter 创建 GUI 是一项简单的任务。

注意:更多信息请参考Python GUI – tkinter

复选按钮小部件

Checkbutton 小部件是一个标准的 Tkinter 小部件,用于实现开/关选择。 Checkbuttons 可以包含文本或图像。当按下按钮时,Tkinter 调用该函数或方法。

句法:
下面给出了使用检查按钮的语法。

w = Checkbutton ( master, options)

参数:

  • master :此参数用于表示父窗口。
  • options :有许多可用的选项,它们可以用作以逗号分隔的键值对。

选项:
以下是常用的选项可以与此小部件一起使用:-

  • activebackground:这个选项用来表示当checkbutton在光标下时的背景颜色。
  • activeforeground:这个选项用来表示当checkbutton在光标下时的前景色。
  • bg:此选项用于表示标签和指示器后面显示的正常背景颜色。
  • 位图:此选项用于在按钮上显示单色图像。
  • bd:此选项用于表示指标周围边框的大小,默认值为 2 像素。
  • command:此选项与检查按钮状态更改时要调用的函数相关联。
  • cursor:通过使用此选项,鼠标光标将在选中按钮上方时更改为该模式。
  • disabledforeground:用于呈现禁用的复选按钮文本的前景色。默认值是默认前景色的点画版本。
  • 字体:此选项用于表示用于文本的字体。
  • fg:此选项用于表示用于渲染文本的颜色。
  • height:此选项用于表示选中按钮上的文本行数,默认值为 1。
  • highlightcolor:这个选项用来表示当checkbutton有焦点时焦点高亮的颜色。
  • image:此选项用于在按钮上显示图形图像。
  • justify:此选项用于控制文本的对齐方式:CENTER、LEFT 或 RIGHT。
  • offvalue:如果未选中按钮,则关联的控制变量默认设置为 0。我们可以将未检查变量的状态更改为其他变量。
  • onvalue:如果选中按钮,则关联的控制变量默认设置为 1。我们可以将检查变量的状态更改为其他状态。
  • padx:这个选项用来表示checkbutton和text的左右两边留有多少空间。它的默认值为 1 像素。
  • pady:此选项用于表示在检查按钮和文本上方和下方留出多少空间。它的默认值为 1 像素。
  • 浮雕:复选按钮的边框类型。它的默认值设置为 FLAT。
  • selectcolor:这个选项用来表示checkbutton设置时的颜色。默认值为 selectcolor=”red”。
  • selectimage:图像在设置时显示在复选按钮上。
  • state:表示checkbutton的状态。默认情况下,它设置为正常。我们可以将其更改为 DISABLED 以使检查按钮无响应。选中按钮处于焦点时的状态为 ACTIVE。
  • text:此选项使用换行符(“\n”)来显示多行文本。
  • underline:该选项用于表示文本中要加下划线的字符的索引。索引在文本中从零开始。
  • 变量:此选项用于表示跟踪检查按钮状态的关联变量。
  • width:这个选项用来表示checkbutton的宽度。并且还表示为以文本形式表示的字符数。
  • wraplength:该选项将文本分成几段。

方法:
此小部件中使用的方法如下:

  • deselect():调用这个方法来关闭checkbutton。
  • flash():检查按钮在活动颜色和正常颜色之间闪烁。
  • invoke():此方法将调用与检查按钮关联的方法。
  • select():调用这个方法来打开checkbutton。
  • toggle():此方法用于在不同的 Checkbutton 之间切换。

例子:

from tkinter import * 
  
root = Tk()
root.geometry("300x200")
  
w = Label(root, text ='GeeksForGeeks', font = "50") 
w.pack()
  
Checkbutton1 = IntVar()  
Checkbutton2 = IntVar()  
Checkbutton3 = IntVar()
  
Button1 = Checkbutton(root, text = "Tutorial", 
                      variable = Checkbutton1,
                      onvalue = 1,
                      offvalue = 0,
                      height = 2,
                      width = 10)
  
Button2 = Checkbutton(root, text = "Student",
                      variable = Checkbutton2,
                      onvalue = 1,
                      offvalue = 0,
                      height = 2,
                      width = 10)
  
Button3 = Checkbutton(root, text = "Courses",
                      variable = Checkbutton3,
                      onvalue = 1,
                      offvalue = 0,
                      height = 2,
                      width = 10)  
    
Button1.pack()  
Button2.pack()  
Button3.pack()
  
mainloop() 

输出: