目录

前言

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:

  1. Labelframe默认的边框使tk.GROOVE,relief=tk.GROOVE
  2. 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 控件的更多相关文章

  1. tkinter学习系列之(八) Canvas控件

    目录 目录 前言 (一)carves创建方法 (二)carves的画图方法 目录 前言 由于最近想在tkinter里内嵌matplotlib,由于用到tkinter里的carves控件,先学习一下. ...

  2. tkinter学习系列(四)之Button 控件

    目录 目录 前言 (一)基本用法和可选属性 ==1.基本用法== ==2.可选属性== (二)属性的具体实现和案例 ==1.常用属性== ==案例一== ==2.按钮里的图片== ==案例二== == ...

  3. tkinter学习系列(三)之Label控件

    目录 目录 前言 (一)基本用法和可选属性 ==1.基本用法== ==2.可选属性== (二)属性的具体使用 ==1.常用属性== ==2.边距与文本对齐方式== ==案例一== ==案例一的效果== ...

  4. tkinter学习系列之(六)Radiobutton控件

    目录 目录 前言 (一)基本属性 (二)在Frame里布局: 目录 前言 Radiobutton单选框,在一组选框中,只能选中一个. (一)基本属性 (1)特有属性: value 按钮的值 varia ...

  5. tkinter学习系列之(五)Checkbutton控件

    目录 目录 前言 (一)基本属性 (二)案例 1.简单的复选框 2.组合复选框 目录 前言 复选框:可以同时多选的一组框,其只有两种状态,选中与未选中. (一)基本属性 (1)说明: tkinter里 ...

  6. .NET MVC 学习笔记(七)— 控制input控件

    .NET MVC 学习笔记(七)— 控制input控件 画面中有时候需要输入数字,这时就需要控制input的输入.以下为保留两位有效数字. /* * 初始化数字输入 */ function initD ...

  7. WP8.1学习系列(第十二章)——全景控件Panorama开发指南

    2014/6/18 适用于:Windows Phone 8 和 Windows Phone Silverlight 8.1 | Windows Phone OS 7.1 全景体验是本机 Windows ...

  8. Vue.js学习笔记 第七篇 表单控件绑定

    本篇主要说明表单控件的数据绑定,这次没有新的知识点 文本框 1.普通文本框 <div id="app-1"> <p><input v-model=&q ...

  9. Python学习系列(七)( 数据库编程)

    Python学习系列(七)( 数据库编程)        Python学习系列(六)(模块) 一,MySQL-Python插件       Python里操作MySQL数据库,需要Python下安装访 ...

随机推荐

  1. ACM学习<二>

    穷举算法思想:     一句话:就是从所有可能的情况,搜索出正确的答案. 步骤:     1.对于一种可能的情况,计算其结果.     2.判断结果是否满足,YES计算下一个,no继续步骤1,然后判断 ...

  2. SSE图像算法优化系列二:高斯模糊算法的全面优化过程分享(一)。

    这里的高斯模糊采用的是论文<Recursive implementation of the Gaussian filter>里描述的递归算法. 仔细观察和理解上述公式,在forward过程 ...

  3. Hadoop2源码分析-HDFS核心模块分析

    1.概述 这篇博客接着<Hadoop2源码分析-RPC机制初识>来讲述,前面我们对MapReduce.序列化.RPC进行了分析和探索,对Hadoop V2的这些模块都有了大致的了解,通过对 ...

  4. 主从热备+负载均衡(LVS + keepalived)

    前言 淘宝架构师李智慧大牛的书籍<大型网站技术架构>以及旭龙兄的博客  --->[大型网站技术实践]初级篇:借助LVS+Keepalived实现负载均衡. 从上参考而得来本文,本文旨 ...

  5. netty源码解解析(4.0)-7 线程模型-IO线程EventLoopGroup和NIO实现(二)

    把NIO事件转换成对channel unsafe的调用或NioTask的调用 processSelectedKeys()方法是处理NIO事件的入口: private void processSelec ...

  6. 教你控制 RecyclerView 滑动的节奏

    最近,PM升级改版落地页,其中有一个很奇怪的交互需求,需求是这样的: 用户在该页面可以上下无限滑动,但是,在上拉滑动过程中,当内容切换为另一个内容的时候,新的内容先吸顶,然后停止滑动,让用户知道他已经 ...

  7. Python和Java编程题(一)

    今天偶尔看到一个博客有贴了五十个编程题,决定以后两天左右做一道题 题目来源:http://blog.sina.com.cn/s/blog_60fafdda0100wb21.html 1.题目 一个数如 ...

  8. 一个复杂Json的解析

    { "website": { "1": { "basic": { "homepage": "http://py ...

  9. Docker版本变化和新版安装

    Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施.容器 ...

  10. 如何用minitab检测一组数据是否服从正态分布

    打开Minitab之后 点击Stat>Basic Statistics> Normality Test  分析之后若 P value(P值)>0.05,说明此组数据服从正态分布