tkinter学习系列之(七)Frame与Labelframe 控件
目录
前言
Frame与Labelframe都是容器,用来存放其他控件,也是用来更好的管理布局。
我一般是用来存放一组相关的控件,让Frame与Labelframe成为其他控件的父控件。
(一)Frame
(1)说明:
tk.Frame(master, option*)
一般用颜色来区分Frame的位置
(2)源代码:
import tkinter as tk
win = tk.Tk()
# 定义第一个容器
frame_left = tk.Frame(win, bg="green")
frame_left.place(relx=0.2, rely=0.2, relwidth=0.3, relheight=0.6)
label_1 = tk.Label(frame_left, text="富强")
label_1.place(relx=0.2, rely=0.2)
label_2 = tk.Label(frame_left, text="民主")
label_2.place(relx=0.6, rely=0.2)
label_3 = tk.Label(frame_left, text="文明")
label_3.place(relx=0.2, rely=0.6)
label_4 = tk.Label(frame_left, text="和谐")
label_4.place(relx=0.6, rely=0.6)
# 定义第二个容器
frame_right = tk.Frame(win, bg="yellow")
frame_right.place(relx=0.5, rely=0.2, relwidth=0.3, relheight=0.6)
label_1 = tk.Label(frame_right, text="自由")
label_1.place(relx=0.2, rely=0.2)
label_2 = tk.Label(frame_right, text="平等")
label_2.place(relx=0.6, rely=0.2)
label_3 = tk.Label(frame_right, text="公正")
label_3.place(relx=0.2, rely=0.6)
label_4 = tk.Label(frame_right, text="法治")
label_4.place(relx=0.6, rely=0.6)
win.mainloop()
(3)输出效果:

(二)Labelframe
(1)说明:
大体上,Labelframe与Frame属性选项一样。
Labelframe有两点不同于Frame:
- Labelframe默认的边框使tk.GROOVE,relief=tk.GROOVE
- Labelframe还可以再边框写文字,即:text="文字"
边框文字的位置:
默认是:labelanchor="wn"

(2)源代码:
import tkinter as tk
win = tk.Tk()
# 定义第一个容器
frame_left = tk.LabelFrame(win, text="国家层面", labelanchor="n")
frame_left.place(relx=0.2, rely=0.2, relwidth=0.3, relheight=0.6)
label_1 = tk.Label(frame_left, text="富强")
label_1.place(relx=0.2, rely=0.2)
label_2 = tk.Label(frame_left, text="民主")
label_2.place(relx=0.6, rely=0.2)
label_3 = tk.Label(frame_left, text="文明")
label_3.place(relx=0.2, rely=0.6)
label_4 = tk.Label(frame_left, text="和谐")
label_4.place(relx=0.6, rely=0.6)
# 定义第二个容器
frame_right = tk.LabelFrame(win, text="社会层面", labelanchor="n")
frame_right.place(relx=0.5, rely=0.2, relwidth=0.3, relheight=0.6)
label_1 = tk.Label(frame_right, text="自由")
label_1.place(relx=0.2, rely=0.2)
label_2 = tk.Label(frame_right, text="平等")
label_2.place(relx=0.6, rely=0.2)
label_3 = tk.Label(frame_right, text="公正")
label_3.place(relx=0.2, rely=0.6)
label_4 = tk.Label(frame_right, text="法治")
label_4.place(relx=0.6, rely=0.6)
win.mainloop()
(3)输出效果:

作者:Mark
日期:2019/02/15 周五
tkinter学习系列之(七)Frame与Labelframe 控件的更多相关文章
- tkinter学习系列之(八) Canvas控件
目录 目录 前言 (一)carves创建方法 (二)carves的画图方法 目录 前言 由于最近想在tkinter里内嵌matplotlib,由于用到tkinter里的carves控件,先学习一下. ...
- tkinter学习系列(四)之Button 控件
目录 目录 前言 (一)基本用法和可选属性 ==1.基本用法== ==2.可选属性== (二)属性的具体实现和案例 ==1.常用属性== ==案例一== ==2.按钮里的图片== ==案例二== == ...
- tkinter学习系列(三)之Label控件
目录 目录 前言 (一)基本用法和可选属性 ==1.基本用法== ==2.可选属性== (二)属性的具体使用 ==1.常用属性== ==2.边距与文本对齐方式== ==案例一== ==案例一的效果== ...
- tkinter学习系列之(六)Radiobutton控件
目录 目录 前言 (一)基本属性 (二)在Frame里布局: 目录 前言 Radiobutton单选框,在一组选框中,只能选中一个. (一)基本属性 (1)特有属性: value 按钮的值 varia ...
- tkinter学习系列之(五)Checkbutton控件
目录 目录 前言 (一)基本属性 (二)案例 1.简单的复选框 2.组合复选框 目录 前言 复选框:可以同时多选的一组框,其只有两种状态,选中与未选中. (一)基本属性 (1)说明: tkinter里 ...
- .NET MVC 学习笔记(七)— 控制input控件
.NET MVC 学习笔记(七)— 控制input控件 画面中有时候需要输入数字,这时就需要控制input的输入.以下为保留两位有效数字. /* * 初始化数字输入 */ function initD ...
- WP8.1学习系列(第十二章)——全景控件Panorama开发指南
2014/6/18 适用于:Windows Phone 8 和 Windows Phone Silverlight 8.1 | Windows Phone OS 7.1 全景体验是本机 Windows ...
- Vue.js学习笔记 第七篇 表单控件绑定
本篇主要说明表单控件的数据绑定,这次没有新的知识点 文本框 1.普通文本框 <div id="app-1"> <p><input v-model=&q ...
- Python学习系列(七)( 数据库编程)
Python学习系列(七)( 数据库编程) Python学习系列(六)(模块) 一,MySQL-Python插件 Python里操作MySQL数据库,需要Python下安装访 ...
随机推荐
- TCP/IP 笔记 - 超时和重传
TCP协议为了提供可靠的数据传输服务,会启动数据重传来解决下层网络层(IP)可能出现的数据包丢失. 超时重传介绍 TCP重传由两套独立机制来完成重传,基于时间的超时重传(RTO,TCP发送数据时会设置 ...
- Spring Boot初识(4)- Spring Boot整合JWT
一.本文介绍 上篇文章讲到Spring Boot整合Swagger的时候其实我就在思考关于接口安全的问题了,在这篇文章了我整合了JWT用来保证接口的安全性.我会先简单介绍一下JWT然后在上篇文章的基础 ...
- docker化java web应用
一.简介 Docker是一个使用Go语言开发的开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的机器上.Docker的发展速度和火爆程度着实令人惊叹,一 ...
- 一个简单的特效引发的大战之移动开发中我为什么放弃jquery mobile
我本想安静的做一个美男子,可是,老板不涨工资,反而,一月不如一月. 我为什么放弃jquery mobile插件选择自己写特效? 在开发中大家都知道效率很重要,一个好的工具可以在开发中大大提升效率,工作 ...
- netty源码解解析(4.0)-2 Chanel的接口设计
全名: io.netty.channel.Channel Channel内部定义了一个Unsafe类型,Channel定义了对外提供的方法,Unsafe定义了具体实现.我把Channel定义的的方法分 ...
- Struts2之ValueStack、ActionContext
今天在看Action获取Resquest.Response时,发现了一个词:值栈.于是今天一天都在看,了解了值栈不仅能知道Action怎么获取request.response等这些,还会了解OGNL语 ...
- nfs 提高传输速度
通常挂载 nfs 的命令为: mount -t nfs -o nolock 192.168.0.124:/home/admin/rootfs /mnt 之前我一直都是用这个命令来挂载,那个传输速度啊, ...
- [MongoDB] MongoDB增删查改
MongoDB的三元素,数据库.集合.文档,集合就是表,文档就是行 开启MongoDB,cd切换到MongoDB的安装目录下的bin目录里,使用命令mongod 开启,参数:--dbpath 路径,把 ...
- Mybatis获取插入记录的自增长ID
转自:http://blog.csdn.net/tolcf/article/details/39035259 1.在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“k ...
- 【转】Git 教程之协同开发
前面我们已经介绍过远程仓库的相关概念,不过那时并没有深入探讨,只是讲解了如何创建远程仓库以及推送最新工作成果到远程仓库,实际上远程仓库对于团队协同开发很重要,不仅仅是团队协同开发的基础,也是代码备份的 ...