Tkinter常用控件及属性


控件

控件名称 说明
Button 按钮控件,在程序中显示按钮
Canvas 画布控件,用来画图形,如线条及多边形等
Checkbutton 多选框控件,用于在程序中提供多项选择框
Entry 输入控件,定义-一个简单的文字输入字段
Frame 框架控件,定义一个窗体,以作为其他控件的容器
Label 标签控件,定义一个文字或图片标签
Listbox 列表框控件,定义一个下拉方块
Menu 菜单控件,定义一个菜单栏、下拉菜单和弹出菜单
Menubutton 菜单按钮控件,用于显示菜单项
Message 消息控件,定义一个对话框
Radiobutton 单选按钮控件,定义一个单选按钮
Scale 范围控件,定义一个滑动条,以帮助用户设置数值
Scrollbar 滚动条控件,定义-一个滚动条
Text Text 文本控件,定义一个文本框
Topleve 此控件与Frame控件类似,可以作为其他控件的容器。但是此控件有自己的最上层窗口,可以提供窗口管理接口

属性

  1. anchor

    定义控件在窗口内的位置或文字信息在控件内的位置。可以是 N、NE、E、SE、S、SW、W、NW 或 CENTER

    Label(anchor=N,text="测试").pack()
    
  2. background(bg)

    定义控件的背景颜色,颜色值可以是颜色名称常数,也可以是 "#rrggbb" 形式的数字。用户可以使用 background 或 bg

    Label(background="#00ff00 ", text="两个黄鹏鸣翠柳,一行白鹭上青天。").pack ()
    Label(bg="SystemHighlight", text="窗含西岭千秋雪,泊东吴万里船。").pack()
    
  3. foreground(fg)

    定义控件的前景(文字)颜色,颜色值可以是表中的名称,也可以是"#rrggbb"形式的数字。可以使用 foreground 或 fg

    Label(fg="#00ff00 ", text="剑锋无情人葬月").pack()
    Label(foreground="SystemHighlight", text="风花雪月").pack()
    
  4. borderwidth

    定义控件的边框宽度,单位是像素

    Entry(borderwidth=10).pack()
    
  5. relief

    定义控件的边框形式。所有的控件都有边框,不过有些控件的边框默认是不可见的。如果是 3D 形式的边框,那么此属性可以是 SUNKEN、RIDGE、RAISED 或 GROOVE;如果是 2D 形式的边框,那么此属性可以是 FLAT 或 SOLID

    Entry(relief=SOLID).pack()
    
  6. image

    定义显示在控件内的图片文件

    photo = PhotoImage(file="./1.gif", width=100, height=100)
    Label(self,image=photo).pack()
    
  7. command

    当控件有特定的动作发生时,如单击按钮,此属性定义动作发生时所调用的 Python 函数

    Button(text="登录",command=self.login).pack()
    
  8. cursor

    定义当鼠标指针移到控件上时,鼠标指针的类型。可使用的鼠标指针类型有 crosshair、watch、xterm、fleur 及 arrow

    Button(cursor="crosshair").pack()
    
  9. font

    如果控件支持标题文字,就可以使用此属性来定义标题文字的字体格式。此属性是一个元组格式:(字体,大小,字体样式),字体样式可以是 bold、italic、underline 及 overstrike。用户可以同时设置多个字体样式,中间以空白隔开

    Label(font=("微软雅黑",10,"bold"),text="床前明月光").pack()
    Label(font=("宋体",10,"bold underline"),text="十步杀一人").pack()
    
  10. bitmap

    定义显示在控件内的 bitmap 图片文件

  11. height

    如果是 Button、Label 或 Text 控件,此属性定义以字符数目为单位的高度。其他的控件则是定义以像素 pixel 为单位的高度

    Button(height=10).pack()
    
  12. highlightbackground

    定义控件在没有键盘焦点时,画 hightlight 区域的颜色

  13. highlightcolor

    定义控件在有键盘焦点时,画 hightlight 区域的颜色

  14. highlightthickness

    定义 hightlight 区域的宽度,以像素为单位

    Entry(highlightthickness=10, highlightbackground="blue", highlightcolor="red").pack()
    
  15. justify

    定义多行文字标题的排列方式,此属性可以是 LEFT、CENTER 或 RIGHT

    Label(justify=LEFT,text="床前明月光\n咦...").pack()
    
  16. padx 与 pady

    定义控件内的文字或图片与控件边框之间的水平和垂直距离

    Button(padx=20, pady=40, text="关闭").pack()
    
  17. text

    定义控件的标题文字

  18. width

    如果是 Button、Label 或 Text 控件,此属性定义以字符数目为单位的宽度。其他控件则是定义以像素pixel为单位的宽度

    Button(width=10,text="登录").pack()
    
  19. variable

    将控件的数值映像到一个变量。当控件的数值改变时,此变量也会跟着改变。同样地,当变量改变时,控件的数值也会跟着改变。此变量是 StringVar 类、IntVar 类、DoubleVar 类及 BooleanVar 的实例变量,这些实例变量可以分别使用 get() 与 set() 方法读取与设置变量

    gender = StringVar()
    gender.set("male")
    Radiobutton(text="男", value="male", variable=gender).pack(side="left")
    Radiobutton(text="女", value="female", variable=gender).pack(side="left")
    


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM