Tkinter 组件详解(六):LabelFrame

Tkinter 组件详解之LabelFrame

LabelFrame 组件是 Frame 组件的变体。默认情况下,LabelFrame 会在其子组件的周围绘制一个边框以及一个标题。

何时使用 LabelFrame 组件?

当你想要将一些相关的组件分为一组的时候,可以使用 LabelFrame 组件,比如一系列 Radiobutton(单选按钮)组件。

用法

为组件分组,需要先创建一个 LabelFrame,然后像往常一样将子组件添加进去。LabelFrame 组件会自动绘制一个边框将子组件包围起来,并在它们上方显示一个文本标题。

import tkinter as tk

master = tk.Tk()

group = tk.LabelFrame(master, text="你从哪里得知CSDN?", padx=5, pady=5)
group.pack(padx=10, pady=10)

v = tk.IntVar()
r1 = tk.Radiobutton(group, text="同学/同事介绍", variable=v, value=1).pack(anchor="w")
r2 = tk.Radiobutton(group, text="老婆大人介绍", variable=v, value=2).pack(anchor="w")
r3 = tk.Radiobutton(group, text="老师/学长介绍", variable=v, value=3).pack(anchor="w")

master.mainloop()

你还可以通过选项定义如何绘制标签和边界,请看下边详细说明。

参数

LabelFrame(master=None, **options) (class)

master -- 父组件

**options -- 组件选项,下方表格详细列举了各个选项的具体含义和用法:

选项含义
background1. 设置 LabelFrame 组件的背景颜色
2. 默认值由系统指定
3. 为了防止更新,可以将颜色值设置为空字符串
bg跟 background 一样
borderwidth1. 指定 LabelFrame 的边框宽度
2. 默认值是 2 像素
bd跟 borderwidth 一样
class默认值是 LabelFrame
colormap1. 有些显示器只支持 256 色(有些可能更少),这种显示器通常提供一个颜色映射来指定要使用要使用的 256 种颜色
2. 该选项允许你指定用于该组件以及其子组件的颜色映射
3. 默认情况下,Frame 使用与其父组件相同的颜色映射
4. 使用此选项,你可以使用其他窗口的颜色映射代替(两窗口必须位于同个屏幕并且具有相同的视觉特性)
5. 你也可以直接使用 "new" 为 Frame 组件分配一个新的颜色映射
6. 一旦创建 Frame 组件实例,你就无法修改这个选项的值
container1. 该选项如果为 True,意味着该窗口将被用作容器,一些其它应用程序将被嵌入 
2. 默认值是 False
cursor1. 指定当鼠标在 LabelFrame 上飘过的时候的鼠标样式
2. 默认值由系统指定
foreground1. 设置 LabelFrame 的文本颜色
2. 默认值由系统指定
fg跟 foreground 一样
font1. 指定 LabelFrame 中文本的字体
2. 默认值由系统指定
height1. 设置 LabelFrame 的高度
2. 单位是像素
highlightbackground1. 指定当 LabelFrame 没有获得焦点的时候高亮边框的颜色
2. 默认值由系统指定,通常是标准背景颜色
highlightcolor1. 指定当 LabelFrame 获得焦点的时候高亮边框的颜色
2. 默认值由系统指定
highlightthickness1. 指定高亮边框的宽度
2. 默认值是 1 或 2 像素
labelanchor1. 控制文本在 LabelFrame 的显示位置
2. "n", "ne", "e", "se", "s", "sw", "w", "nw", 或 "center" 来定位(ewsn代表东西南北,上北下南左西右东)
3. 默认值是 NW
labelwidget1. 指定一个组件替代默认的文本 Label
2. 如果同时设置此选项和 text 选项,则忽略 text 选项的内容
padx1. 指定 FrameLabel 水平方向上的额外间距(内容和边框间)
2. 默认值是 0
pady1. 指定 FrameLabel 垂直方向上的额外间距(内容和边框间)
2. 默认值是 0
relief1. 指定边框样式
2. 默认值是 "groove"
3. 另外你还可以设置 "flat","sunken","raised" 或 "ridge"
4. 注意,如果你要设置边框样式,记得设置 borderwidth 或 bd 选项不为 0,才能看到边框
takefocus1. 指定该组件是否接受输入焦点(用户可以通过 tab 键将焦点转移上来)
2. 默认值是 False
text1. 指定 LabelFrame 显示的文本
2. 文本可以包含换行符
visual1. 为新窗口指定视觉信息
2. 该选项没有默认值
width1. 设置 LabelFrame 的宽度
2. 默认值是 0
  • 14
    点赞
  • 120
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值