控件
控件名称 | 说明 |
---|---|
Button | 按钮控件,在程序中显示按钮 |
Canvas | 画布控件,用来画图形,如线条及多边形等 |
Checkbutton | 多选框控件,用于在程序中提供多项选择框 |
Entry | 输入控件,定义-一个简单的文字输入字段 |
Frame | 框架控件,定义一个窗体,以作为其他控件的容器 |
Label | 标签控件,定义一个文字或图片标签 |
Listbox | 列表框控件,定义一个下拉方块 |
Menu | 菜单控件,定义一个菜单栏、下拉菜单和弹出菜单 |
Menubutton | 菜单按钮控件,用于显示菜单项 |
Message | 消息控件,定义一个对话框 |
Radiobutton | 单选按钮控件,定义一个单选按钮 |
Scale | 范围控件,定义一个滑动条,以帮助用户设置数值 |
Scrollbar | 滚动条控件,定义-一个滚动条 |
Text | Text 文本控件,定义一个文本框 |
Topleve | 此控件与Frame控件类似,可以作为其他控件的容器。但是此控件有自己的最上层窗口,可以提供窗口管理接口 |
属性
-
anchor
定义控件在窗口内的位置或文字信息在控件内的位置。可以是 N、NE、E、SE、S、SW、W、NW 或 CENTER
Label(anchor=N,text="测试").pack()
-
background(bg)
定义控件的背景颜色,颜色值可以是颜色名称常数,也可以是 "#rrggbb" 形式的数字。用户可以使用 background 或 bg
Label(background="#00ff00 ", text="两个黄鹏鸣翠柳,一行白鹭上青天。").pack () Label(bg="SystemHighlight", text="窗含西岭千秋雪,泊东吴万里船。").pack()
-
foreground(fg)
定义控件的前景(文字)颜色,颜色值可以是表中的名称,也可以是"#rrggbb"形式的数字。可以使用 foreground 或 fg
Label(fg="#00ff00 ", text="剑锋无情人葬月").pack() Label(foreground="SystemHighlight", text="风花雪月").pack()
-
borderwidth
定义控件的边框宽度,单位是像素
Entry(borderwidth=10).pack()
-
relief
定义控件的边框形式。所有的控件都有边框,不过有些控件的边框默认是不可见的。如果是 3D 形式的边框,那么此属性可以是 SUNKEN、RIDGE、RAISED 或 GROOVE;如果是 2D 形式的边框,那么此属性可以是 FLAT 或 SOLID
Entry(relief=SOLID).pack()
-
image
定义显示在控件内的图片文件
photo = PhotoImage(file="./1.gif", width=100, height=100) Label(self,image=photo).pack()
-
command
当控件有特定的动作发生时,如单击按钮,此属性定义动作发生时所调用的 Python 函数
Button(text="登录",command=self.login).pack()
-
cursor
定义当鼠标指针移到控件上时,鼠标指针的类型。可使用的鼠标指针类型有 crosshair、watch、xterm、fleur 及 arrow
Button(cursor="crosshair").pack()
-
font
如果控件支持标题文字,就可以使用此属性来定义标题文字的字体格式。此属性是一个元组格式:(字体,大小,字体样式),字体样式可以是 bold、italic、underline 及 overstrike。用户可以同时设置多个字体样式,中间以空白隔开
Label(font=("微软雅黑",10,"bold"),text="床前明月光").pack() Label(font=("宋体",10,"bold underline"),text="十步杀一人").pack()
-
bitmap
定义显示在控件内的 bitmap 图片文件
-
height
如果是 Button、Label 或 Text 控件,此属性定义以字符数目为单位的高度。其他的控件则是定义以像素 pixel 为单位的高度
Button(height=10).pack()
-
highlightbackground
定义控件在没有键盘焦点时,画 hightlight 区域的颜色
-
highlightcolor
定义控件在有键盘焦点时,画 hightlight 区域的颜色
-
highlightthickness
定义 hightlight 区域的宽度,以像素为单位
Entry(highlightthickness=10, highlightbackground="blue", highlightcolor="red").pack()
-
justify
定义多行文字标题的排列方式,此属性可以是 LEFT、CENTER 或 RIGHT
Label(justify=LEFT,text="床前明月光\n咦...").pack()
-
padx 与 pady
定义控件内的文字或图片与控件边框之间的水平和垂直距离
Button(padx=20, pady=40, text="关闭").pack()
-
text
定义控件的标题文字
-
width
如果是 Button、Label 或 Text 控件,此属性定义以字符数目为单位的宽度。其他控件则是定义以像素pixel为单位的宽度
Button(width=10,text="登录").pack()
-
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")