Python: tkinter窗口屏幕居中,设置窗口最大,最小尺寸实例


Posted in Python onMarch 04, 2020

我就废话不多说了。大家直接看代码吧!

#!/usr/bin/env python
#coding=utf-8
'''
  窗口屏幕居中,设置窗口最大,最小尺寸...
  版权所有 2014 yao_yu (http://blog.csdn.net/yao_yu_126)
  本代码以MIT许可协议发布
  2014-04-15 创建
'''
 
import tkinter as tk
from tkinter  import ttk
 
def get_screen_size(window):
  return window.winfo_screenwidth(),window.winfo_screenheight()
 
def get_window_size(window):
  return window.winfo_reqwidth(),window.winfo_reqheight()
 
def center_window(root, width, height):
  screenwidth = root.winfo_screenwidth()
  screenheight = root.winfo_screenheight()
  size = '%dx%d+%d+%d' % (width, height, (screenwidth - width)/2, (screenheight - height)/2)
  print(size)
  root.geometry(size)
 
root = tk.Tk()
root.title('测试窗口')
center_window(root, 300, 240)
root.maxsize(600, 400)
root.minsize(300, 240)
ttk.Label(root, relief = tk.FLAT, text = '屏幕大小(%sx%s)\n窗口大小(%sx%s)' % (get_screen_size(root) + get_window_size(root))).pack(expand = tk.YES)
tk.mainloop()

补充知识:关于tkinter几个需要用到的窗口设置

设置窗口的大小和位置

geometry(widthxheight+x+y)

窗口的长宽分别为width和height;

窗口到主窗口的间距为 x和 y ;

注意可以使用减号,例如 10x10-10-10 代表10*10大小的窗口出现在右下角,但是不能直接使x或y为负值,然后带入 wxh+x+y;同时这个格式里不能有空格。

当没有参数时,用此方法能返回当前的尺寸位置参数。

# -*- coding:utf-8 -*-
from tkinter import *

root = Tk()
width, height, padx, pady = 800, 600, 40, 300
root.geometry('%dx%d-%d+%d' % (width, height, padx, pady))

设置窗口样式、透明和全屏

-toolwindow 可设置窗口为工具栏样式;

-alpha 可设置透明度,0完全透明,1不透明。这里透明是窗口内的所有内容,不仅是窗体,所以要特别小心一个完全透明的窗口!

-fullscreen 设置全屏 注意前面的短横杠(-) 不能少

-topmost 设置窗口置顶。两个同时被置顶的窗口为同级(能互相遮盖),但他们都能同时遮盖住没有被设置为置顶的窗口。

root.attributes('-toolwindow', False, 
        '-alpha', 0.9, 
        '-fullscreen', True, 
        '-topmost', True)

去掉标题栏

去掉窗口的框架,脱离windows窗口管理。所以此时你也不能拖动它。并且这个窗口也不会出现在任务栏。

root.overrideredirect(True)

思考题:一个全屏、置顶、透明、去标题栏的窗口将意味着什么?

以上这篇Python: tkinter窗口屏幕居中,设置窗口最大,最小尺寸实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python持久性管理pickle模块详细介绍
Feb 18 Python
python编写爬虫小程序
May 14 Python
Python tkinter实现的图片移动碰撞动画效果【附源码下载】
Jan 04 Python
Windows下将Python文件打包成.EXE可执行文件的方法
Aug 03 Python
python实现合并多个list及合并多个django QuerySet的方法示例
Jun 11 Python
python 绘制拟合曲线并加指定点标识的实现
Jul 10 Python
python中pygame安装过程(超级详细)
Aug 04 Python
Python3.6+selenium2.53.6自动化测试_读取excel文件的方法
Sep 06 Python
python 默认参数相关知识详解
Sep 18 Python
Tensorflow中tf.ConfigProto()的用法详解
Feb 06 Python
详解用Python进行时间序列预测的7种方法
Mar 13 Python
使用python-cv2实现Harr+Adaboost人脸识别的示例
Oct 27 Python
关于Python Tkinter Button控件command传参问题的解决方式
Mar 04 #Python
在python tkinter界面中添加按钮的实例
Mar 04 #Python
Python tkinter布局与按钮间距设置方式
Mar 04 #Python
python 按钮点击关闭窗口的实现
Mar 04 #Python
Tkinter中复选菜单是否被选中的判断与设置方式
Mar 04 #Python
python虚拟环境模块venv使用及示例
Mar 04 #Python
Python类的绑定方法和非绑定方法实例解析
Mar 04 #Python
You might like
PHP在字符串中查找指定字符串并删除的代码
2008/10/02 PHP
腾讯QQ微博API接口获取微博内容
2013/10/30 PHP
PHP 读取文本文件内容并分页显示
2016/01/02 PHP
Zend Framework入门应用实例详解
2016/12/11 PHP
jQuery实现id模糊查询的小例子
2013/03/19 Javascript
ie下jquery.getJSON的缓存问题的处理方法
2013/03/29 Javascript
PHPExcel中的一些常用方法汇总
2015/01/23 Javascript
jQuery实现跟随鼠标运动图层效果的方法
2015/02/02 Javascript
Jquery组件easyUi实现选项卡切换示例
2016/08/23 Javascript
Angular ui.bootstrap.pagination分页
2017/01/20 Javascript
jQuery 控制文本框自动缩小字体填充
2017/06/16 jQuery
JS检测window.open打开的窗口是否关闭
2017/06/25 Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
2017/10/26 Javascript
JavaScript实现无限级递归树的示例代码
2019/03/29 Javascript
Vue-cli项目部署到Nginx服务器的方法
2019/11/01 Javascript
详解element-ui 表单校验 Rules 配置 常用黑科技
2020/07/11 Javascript
Vue.js使用axios动态获取response里的data数据操作
2020/09/08 Javascript
[02:28]DOTA2亚洲邀请赛附加赛 RECAP赛事回顾
2015/01/29 DOTA
Python3.4实现从HTTP代理网站批量获取代理并筛选的方法示例
2017/09/26 Python
pandas 数据结构之Series的使用方法
2019/06/21 Python
python递归法解决棋盘分割问题
2019/07/17 Python
Python数据可视化实现正态分布(高斯分布)
2019/08/21 Python
Python3开发实例之非关系型图数据库Neo4j安装方法及Python3连接操作Neo4j方法实例
2020/03/18 Python
简单了解python调用其他脚本方法实例
2020/03/26 Python
Python3爬虫中关于Ajax分析方法的总结
2020/07/10 Python
浅析Python 字符编码与文件处理
2020/09/24 Python
通过实例解析python subprocess模块原理及用法
2020/10/10 Python
CSS3转换功能transform主要属性值分析及实现分享
2012/05/06 HTML / CSS
利用纯CSS3实现tab选项卡切换示例代码
2016/09/21 HTML / CSS
财务管理专业应届毕业生求职信
2013/09/22 职场文书
会计学财务管理专业个人的自我评价
2013/10/19 职场文书
工地例会施工汇报材料
2014/08/22 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
CSS3 天气图标动画效果
2021/04/06 HTML / CSS
MySQL中你可能忽略的COLLATION实例详解
2021/05/12 MySQL
一文搞懂Java中的注解和反射
2022/06/21 Java/Android