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标准库的一部分,所以使用它 ...
随机推荐
- 基于【 springBoot +springCloud+vue 项目】一 || 项目架构简介
一.前言 基于前期学习以及工作经验积累,持续更新基于springboot+springcloud+vue的demo项目.
- Git撤回已经推送(push)至远程仓库提交(commit)的版本
背景 所以,经常会遇到已经提交远程仓库,但是又不是我想要的版本,要撤下来. 回退版本一般使用git reset,又分为: # 不删除工作空间改动代码,撤销commit,不撤销git add . git ...
- Jmeter学习笔记(五)——dubbo接口测试
一.什么是dubbo接口 Dubbo 接口是阿里巴巴开源的致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案,dubbo框架告别了传统的web service的服务模式,进而改用 ...
- 【完整篇】orangepi香橙派新手入门之被官方坑
图片特意缩小,看不清请打开另一个窗口查看原图. 第一步:烧录系统,我烧录的是Ubuntu_Desktop[请注意!!!!用户名是错的!!用户名是错的!!用户名是错的!!] 正确的用户名是orangep ...
- Powershell-获取Hyper-V复制状态
Get-VM | Select-Object name,ReplicationHealth
- 算法学习:我终于明白二分查找的时间复杂度为什么是O(logn)了
最近发现了个好东西,就是一个学算法的好东西,是网易公开课的一个视频. 直通车 这是麻省理工学院的公开课,有中英字幕,感谢网易.. 也可以在App把视频缓存下来之后再放到电脑上面看,因为我这样可以倍速, ...
- 18.父组件给子组件传值&方法
1.父组件给子组件传值 2.父组件把方法传递给子组件
- Vue外卖的学习之路
用Vue打造外卖项目 一.项目前整理思绪 (1)项目所需的技术栈 (2)项目分布 (3)整体项目文件介绍
- CentOS环境部署(Nginx+Mariadb+Java+Tomcat)
1.安装nginx 安装 yum install nginx 启动 yum install nginx 开机自启 sudo systemctl enable nginx 2.安装mariadb 安装 ...
- flask 杂记2
添加属性 @property def password(self): return self._password @password.setter def password(self, raw): s ...