tkinter入门-布局方式pack(), grid(), place()
pack 转载于https://www.cnblogs.com/kongzhagen/p/6144588.html\
1. 使用pack函数的时候,默认先使用放到上面的,然后依次从上向下排
2. 可接受的默认参数
side : 按钮停靠在窗口的哪个位置
left: 左
right: 右
top: 上
bottom: 下
fill: 填充
x: 水平方向填充
y: 竖直方向填充
bottom:水平和竖直方向填充
none: 不填充
expand:
yes: 扩展整个空白区
no: 不扩展
anchor:
N: 北 下
E: 东 右
S: 南下
W: 西 左
padx:x方向的外边距
pady:y方向的外边距
ipadx:x方向的内边距
ipady:y方向的内边距
from tkinter import *
root = Tk()
Button(root,text='A').pack(side=LEFT,expand=YES,fill=Y)
Button(root,text='B').pack(side=TOP,expand=YES,fill=BOTH)
Button(root,text='C').pack(side=RIGHT,expand=YES,fill=NONE)
Button(root,text='D').pack(side=LEFT,expand=NO,fill=Y)
Button(root,text='E').pack(side=TOP,expand=YES,fill=BOTH)
Button(root,text='F').pack(side=BOTTOM,expand=YES)
Button(root,text='G').pack(anchor=SE)
root.mainloop()
效果图 :

grid() 通常是进行栅格样式的摆放方式
import tkinter root = tkinter.Tk() root.minsize(500, 500) btn1 = tkinter.Button(root, text='按钮1')
btn1.grid(row=0, column=0)
btn2 = tkinter.Button(root, text='按钮2')
btn2.grid(row=0, column=1)
btn3 = tkinter.Button(root, text='按钮3')
btn3.grid(row=1, column=0)
btn3 = tkinter.Button(root, text='按钮4')
btn3.grid(row=1, column=1)
btn4 = tkinter.Button(root, text="按钮5")
btn4.grid(row=2, column=0, columnspan=2, ipadx=20) # 占据两行 btnd = tkinter.Button(root, text='按钮0')
btnd.grid(row=0, column=2, rowspan=2, ipady=16) # 占据两列 root.mainloop()

place() 主要采用的是绝对的摆放方式,主要是方式由两种 第一种x, y, width, height 和 relx, rely, relwidth, relheight 按照比例进行摆放
import tkinter # 创建主窗口对象
root = tkinter.Tk() root.minsize(500, 500)
# root.geometry('500x300+500+200') # 设置固定窗口的大小 btn1 = tkinter.Button(root, text='按钮1')
btn1.place(relx=100 / 500, rely = 50 / 500, ) btn2 = tkinter.Button(root, text='按钮2')
btn2.place(relx=200/500, rely=50/500, relwidth=0.1, relheight=0.3) root.mainloop()

tkinter入门-布局方式pack(), grid(), place()的更多相关文章
- [Tkinter 教程] 布局管理 (Pack Place Grid)
原系列地址: Python Tkinter 简介: 本文讲述如何使用 tkinter 的布局管理 (被称作 layout managers 或 geometry managers). tkinter ...
- [Tkinter 教程12] 布局管理 (Pack Place Grid)
简介: 本文讲述如何使用 tkinter 的布局管理 (被称作 layout managers 或 geometry managers). tkinter 有三种布局管理方式: pack grid p ...
- tkinter中布局pack、place和grid(八)
tkinter中布局pack.place和grid pack布局 import tkinter wuya = tkinter.Tk() wuya.title("wuya") wuy ...
- Extjs Vbox布局方式,以及align种类,flex,pack属性含义简介
VBox布局方式,熟悉下一下几个主要属性: 一.align:字符类型,指示组件在容器内的对齐方式.这个是基于容器的左上角来排列的.pack不同,pack是根据容器的最上边来显示的. 1.left(默认 ...
- Android入门(十):界面的布局方式及其实际应用
关于Android界面布局,网上已经有了很多非常不错的学习资料,在这里我也不班门弄斧了,推荐两篇我认为写的不错的教程,然后再重点讲一下几种布局方式的实际应用. 教程链接:①http://www.cnb ...
- Python3 tkinter 界面布局(转自https://blog.csdn.net/junjun5156/article/details/72510927)
所谓布局,就是指控制窗体容器中各个控件(组件)的位置关系.tkinter 共有三种几何布局管理器,分别是:pack布局,grid布局,place布局. pack布局 使用 pack布局,将向容器中添加 ...
- 布局控件Grid
XAML概述 Silverlight的控件绘制是由XAML语言进行支持的.什么是XAML语言? 简单的说,XAML(Extensible Application Markup Language )是一 ...
- 【Android UI】Android开发之View的几种布局方式及实践
引言 通过前面两篇: Android 开发之旅:又见Hello World! Android 开发之旅:深入分析布局文件&又是“Hello World!” 我们对Android应用程序运行原理 ...
- 对比MFC资源文件谈谈WPF布局方式
对比MFC资源文件谈谈WPF布局方式 MFC方式 对于传统的MFC基于UI的应用程序设计通常分两步走,首先是设计UI,使用的是RC文件,然后是代码文件,对RC文件进行操作,如下面Figure 1 的基 ...
随机推荐
- C++ DLL导出的两种方式和链接的两种方式
第一种 导出方式 extern "C" _declspec(dllexport) int Plus(int x, int y); extern "C" _dec ...
- Spring Data JPA 大纲归纳
第一天: springdatajpa day1:orm思想和hibernate以及jpa的概述和jpa的基本操作 day2:springdatajpa的运行原理以及基本操作 day3:多表操作,复杂查 ...
- c# MVC方式文件上传
MVC控制器中代码 index.cshtml <form action="/Home/Upload" method="post" enctype=&quo ...
- MYSQL8.0+ 使用JDBC查询中文乱码的问题
在建表时,附加一句 DROP TABLE IF EXISTS `sys_table`;CREATE TABLE `sys_table` ( ... ) ENGINE=InnoDB DEFAULT CH ...
- JVM命令jinfo
jinfo也是jvm中参与的一个命令,可以查看运行中jvm的全部参数,还可以设置部分参数. 格式 jinfo [ option ] pid jinfo [ opti ...
- new函数
可以通过new函数直接创建一个类型的指针 变量名:=new(Type) 使用new函数创建的指针已有指向,可以使用*指针对象进行赋值. func main() { a := new(int) fmt. ...
- 红米k30评测+全面解读
暂时还没有图片等页面美化..其实网上有很多美图,这里不再粘贴了 红米k30是小米公司子品牌红米最近推出的一款性价比非常高的手机,以下进行多方面解读: 本人会尽量用不懂手机都能理解的语言来各方面讲解k3 ...
- 打开myeclipse提示An internal error occurred during: "CheckLicensesAndNotify". com/genuitec/pulse2/client/targetcfg/ui/PulseActivator
打开myeclipse提示An internal error occurred during: "CheckLicensesAndNotify". com/genuitec/pul ...
- 01—EF开山篇,ORM介绍
我是2014年接触的EF,用了一年多,感觉非常的方便,现在的公司没有使用,最近有朋友接了两个项目找我帮忙,都想使用EF,自己也有断时间没有使用,借着这个机会复习下.Entity Framework,简 ...
- es高级用法之冷热分离
背景 用户需求:近期数据查询速度快,较远历史数据运行查询速度慢? 对于开发人员而言即数据的冷热分离,实现此功能有2个前提条件: 硬件:处理速度不同的硬件,最起码有读写速度不同的硬盘,如SSD.机械硬盘 ...