Tkinter 之Place布局
一、参数说明
参数 | 作用 |
---|---|
anchor | 控制组件在 place 分配的空间中的位置 "n", "ne", "e", "se", "s", "sw", "w", "nw", 或 "center" 来定位(ewsn代表东西南北,上北下南左西右东) 默认值是 "nw" |
bordermode | 指定边框模式("inside" 或 "outside") 默认值是 "inside" |
height | 指定该组件的高度(像素) |
in_ | 将该组件放到该选项指定的组件中 指定的组件必须是该组件的父组件 |
relheight | 指定该组件相对于父组件的高度 取值范围 0.0 ~ 1.0 |
relwidth | 指定该组件相对于父组件的宽度 取值范围 0.0 ~ 1.0 |
relx | 指定该组件相对于父组件的水平位置 取值范围 0.0 ~ 1.0 |
rely | 指定该组件相对于父组件的垂直位置 取值范围 0.0 ~ 1.0 |
width | 指定该组件的宽度(像素) |
x | 指定该组件的水平偏移位置(像素) 如同时指定了 relx 选项,优先实现 relx 选项 |
y | 指定该组件的垂直偏移位置(像素) 如同时指定了 rely 选项,优先实现 rely 选项 |
二、代码示例
import tkinter as tk window = tk.Tk()
# 设置窗口大小
winWidth = 600
winHeight = 400
# 获取屏幕分辨率
screenWidth = window.winfo_screenwidth()
screenHeight = window.winfo_screenheight() x = int((screenWidth - winWidth) / 2)
y = int((screenHeight - winHeight) / 2) # 设置主窗口标题
window.title("Place参数说明")
# 设置窗口初始位置在屏幕居中
window.geometry("%sx%s+%s+%s" % (winWidth, winHeight, x, y))
# 设置窗口图标
window.iconbitmap("./image/icon.ico")
# 设置窗口宽高固定
window.resizable(0, 0) frame = tk.Frame(window)
frame.place(rely=.5, relx=0.5, x=-100, y=-100)
# 返回参数信息
print(frame.place_info()) tk.Label(frame, text="用户名").grid(row=0)
tk.Label(frame, text="密码").grid(row=1) username_var = tk.StringVar()
pwd_var = tk.StringVar()
tk.Entry(frame, textvariable = username_var).grid(row=0, column=1)
tk.Entry(frame, show="*", textvariable=pwd_var).grid(row=1, column=1) photo = tk.PhotoImage(file = "./image/loading.gif")
tk.Label(frame, image=photo).grid(row = 0, rowspan=2, column=2, padx=5, pady=5) def login():
username = username_var.get()
password = pwd_var.get()
print("username=%s, password=%s" % (username, password))
tk.Button(frame, text="登录", command=login, padx=20).grid(row=2, columnspan=3) window.mainloop()
三、效果图
Tkinter 之Place布局的更多相关文章
- tkinter中frame布局控件(九)
frame控件 frame控件是将窗口分成好几个小模块,然后每个小模块中添加控件. 也就是将窗口合理的布局 由于和其他控件的操作基本一致,就不做注释了 import tkinter wuya = tk ...
- tkinter之grid布局管理器详解
在很久之前,我发过一篇<tkinter模块常用参数>,里面已经几乎涵盖了tkinter的大部分教程. 好吧,其实也就是上一篇而已啦. 所谓布局,就是指控制窗体容器中各个控件(组件)的位置关 ...
- tkinter中frame布局控件
frame控件 frame控件是将窗口分成好几个小模块,然后每个小模块中添加控件. 也就是将窗口合理的布局 由于和其他控件的操作基本一致,就不做注释了 import tkinter wuya = tk ...
- Tkinter 的三大布局管理器 pack、grid 和 place用法汇总
学习python的tkinter免不了要对各个组件进行位置的排放与设定,常用的布局管理器有grid,pack和place.这三种均用于同一父组件下的组件布局,但是也是有区别的,先看下他们各自的含义吧. ...
- [Tkinter 教程12] 布局管理 (Pack Place Grid)
简介: 本文讲述如何使用 tkinter 的布局管理 (被称作 layout managers 或 geometry managers). tkinter 有三种布局管理方式: pack grid p ...
- Tkinter 之Grid布局
一.参数说明 参数 作用 column 指定组件插入的列(0 表示第 1 列)默认值是 0 columnspan 指定用多少列(跨列)显示该组件 row 指定组件插入的行(0 表示第 1 行) ...
- Tkinter 之pack布局
一参数说明 参数 作用 anchor 控制组件在 pack 分配的空间中的位置"n", "ne", "e", "se", ...
- tkinter的grid布局中合并单元格
rowspan 合并多行,比如:Label(root,text="table",width=10,height=2,),grid(row=0,column=0,rowspan=2 ...
- 基于tkinter的GUI编程
tkinter:tkinter是绑定了Python的TKGUI工具集,就是Python包装的Tcl代码,通过内嵌在Python解释器内部的Tcl解释器实现的,它是Python标准库的一部分,所以使用它 ...
随机推荐
- mongodb入门基本语法
show dbs 查看所有数据库列表 二. 创建数据库 使用数据库. 创建数据库 use student 如果真的想把这个数据库创建成功, 那么必须插入一个数据. 数据库中不能直接插入数据,只能往集合 ...
- Mybatis之日志工厂
思考:我们在测试SQL的时候,要是能够在控制台输出 SQL 的话,是不是就能够有更快的排错效率? 如果一个 数据库相关的操作出现了问题,我们可以根据输出的SQL语句快速排查问题. 对于以往的开发过程, ...
- EWA不能及时通过邮件接收
1. 确保EWA已经配置成功.可以通过SW_workcenter查看 2.确保EWA的邮箱设置成功 3. 检查EWAreport产生的时间 卫星系统:SDCCN 在tab"done" ...
- [LeetCode] 148. 排序链表 ☆☆☆(归并排序)
148.排序链表 描述 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序. 示例 1: 输入: 4->2->1->3输出: 1->2->3-> ...
- windows上安装python虚拟环境
一.windows上安装python虚拟环境 1.安装pip install virtualenvvirtualenv --version 2.新建一个python虚拟环境virtual_env_01 ...
- MVC-Cache-2.应用程序缓存(Cache:1.输出缓存[2].应用程序缓存)
2.应用数据缓存-Cache 1.引入CacheHelper.cs CacheHelper.cs文件源码在下面; 2.介绍用法: //键 string ips = "键"; //值 ...
- python中read()、readline()、readlines()区别
1.read([size])方法 read([size])方法从文件当前位置读取size个字节,若无参数size,则表示读取至文件结束位置,它范围为字符串对象 2.readline()方法 从字面 ...
- Android驱动之设备树简介
目录 一. 设备树简介 2 1. 问题一:为什么需要设备树? 2 ①名词解释: 2 ②DT详细介绍: 2 ③DTS是DT的源文件,描述Device Tree中的设备 ...
- 读取xml时,报错:xml.etree.ElementTree.ParseError: no element found: line 20, column 9
读取xml时,出现报错:xml.etree.ElementTree.ParseError: no element found: line 20, column 9 原因是xml文件格式有问题,可以检查 ...
- Linux网络编程综合运用之MiniFtp实现(八)
上节中实现了"USER"和"PASS"命令,如下: 事实上FTP是有很多命令组成的,如果就采用上面的这种方法来实现的话,就会有很多if...else if语句, ...