Python 3 - Tkinter 复选按钮

  • 简述

    Checkbutton 小部件用于向用户显示多个选项作为切换按钮。然后用户可以通过单击与每个选项对应的按钮来选择一个或多个选项。
    您还可以显示图像来代替文本。
  • 句法

    这是创建此小部件的简单语法 -
    
    w = Checkbutton ( master, option, ... )
    
  • 参数

    • master− 这代表父窗口。
    • options− 这是此小部件最常用选项的列表。这些选项可以用作以逗号分隔的键值对。
    序号 选项和描述
    1
    activebackground
    复选按钮位于光标下方时的背景颜色。
    2
    activeforeground
    复选按钮位于光标下方时的前景色。
    3
    bg
    标签和指示器后面显示的正常背景色。
    4
    bitmap
    在按钮上显示单色图像。
    5
    bd
    指标周围边框的大小。默认值为 2 像素。
    6
    command
    每次用户更改此复选按钮的状态时调用的过程。
    7
    cursor
    如果您将此选项设置为光标名称(箭头、点等),则鼠标光标在复选按钮上时将更改为该模式。
    8
    disabledforeground
    用于呈现禁用的复选按钮文本的前景色。默认值是默认前景色的点画版本。
    9
    font
    用于文本的字体。
    10
    fg
    用于呈现文本的颜色。
    11
    height
    复选按钮上的文本行数。默认值为 1。
    12
    highlightcolor
    当复选按钮具有焦点时,焦点突出显示的颜色。
    13
    image
    在按钮上显示图形图像。
    14
    justify
    如果文本包含多行,则此选项控制文本的对齐方式:CENTER、LEFT 或 RIGHT。
    15
    offvalue
    通常,复选按钮的关联控制变量在清除(关闭)时将设置为 0。您可以通过将 offvalue 设置为该值来为关闭状态提供替代值。
    16
    onvalue
    通常,复选按钮的关联控制变量在设置(打开)时将设置为 1。您可以通过将 onvalue 设置为该值来为 on 状态提供替代值。
    17
    padx
    复选按钮和文本的左侧和右侧留有多少空间。默认为 1 像素。
    18
    pady
    在复选按钮和文本上方和下方留出多少空间。默认为 1 像素。
    19
    relief
    使用默认值 relief = FLAT,复选按钮不会从其背景中脱颖而出。您可以将此选项设置为任何其他样式
    20
    selectcolor
    复选按钮设置时的颜色。默认是 selectcolor = "red"。
    21
    selectimage
    如果您将此选项设置为图像,则该图像将在设置时出现在复选按钮中。
    22
    state
    默认值为 state = NORMAL,但您可以使用 state = DISABLED 使控件变灰并使其无响应。如果光标当前位于复选按钮上方,则状态为 ACTIVE。
    23
    text
    显示在复选按钮旁边的标签。使用换行符 ("\n") 显示多行文本。
    24
    underline
    使用默认值 -1,文本标签的所有字符都没有下划线。将此选项设置为文本中字符的索引(从零开始计数)以在该字符下划线。
    25
    variable
    跟踪复选按钮当前状态的控制变量。通常此变量是IntVar,0 表示清除,1 表示设置,但请参阅上面的 offvalue 和 onvalue 选项。
    26
    width
    复选按钮的默认宽度由显示的图像或文本的大小决定。您可以将此选项设置为多个字符,并且复选按钮将始终为那么多字符留出空间。
    27
    wraplength
    通常,行不换行。您可以将此选项设置为多个字符,并且所有行将被分成不超过该数字的片段。
  • 方法

    以下是此小部件的常用方法 -
    序号 方法与描述
    1
    deselect()
    清除(关闭)复选按钮。
    2
    flash()
    在活动颜色和正常颜色之间使复选按钮闪烁几次,但保持它开始时的样子。
    3
    invoke()
    您可以调用此方法来获取与用户单击复选按钮更改其状态时将发生的相同操作。
    4
    select()
    设置(打开)复选按钮。
    5
    toggle()
    如果设置,则清除复选按钮,如果清除则设置它。
  • 例子

    自己尝试以下示例 -
    
    # !/usr/bin/python3
    from tkinter import *
    import tkinter
        
    top = Tk()
    CheckVar1 = IntVar()
    CheckVar2 = IntVar()
    C1 = Checkbutton(top, text = "Music", variable = CheckVar1, \
                     onvalue = 1, offvalue = 0, height=5, \
                     width = 20, )
    C2 = Checkbutton(top, text = "Video", variable = CheckVar2, \
                     onvalue = 1, offvalue = 0, height=5, \
                     width = 20)
    C1.pack()
    C2.pack()
    top.mainloop()
    
  • 结果

    执行上述代码时,会产生以下结果 -
    传统知识复选框