首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何控制位置tkinter窗口会在窗口被拖起时居中

在使用tkinter创建窗口时,可以通过设置窗口的位置来实现窗口在被拖起时居中显示。以下是一种实现方法:

  1. 导入tkinter模块:
代码语言:txt
复制
import tkinter as tk
  1. 创建窗口并设置其大小:
代码语言:txt
复制
window = tk.Tk()
window.geometry("400x300")  # 设置窗口大小为400x300
  1. 定义一个函数来居中窗口:
代码语言:txt
复制
def center_window(window):
    window.update_idletasks()  # 更新窗口的尺寸
    width = window.winfo_width()  # 获取窗口的宽度
    height = window.winfo_height()  # 获取窗口的高度
    screen_width = window.winfo_screenwidth()  # 获取屏幕的宽度
    screen_height = window.winfo_screenheight()  # 获取屏幕的高度
    x = (screen_width - width) // 2  # 计算窗口的左上角x坐标
    y = (screen_height - height) // 2  # 计算窗口的左上角y坐标
    window.geometry("{}x{}+{}+{}".format(width, height, x, y))  # 设置窗口的位置为居中
  1. 在创建窗口后调用center_window函数:
代码语言:txt
复制
window.after(0, lambda: center_window(window))  # 在窗口创建后立即调用center_window函数

完整的代码示例:

代码语言:txt
复制
import tkinter as tk

def center_window(window):
    window.update_idletasks()
    width = window.winfo_width()
    height = window.winfo_height()
    screen_width = window.winfo_screenwidth()
    screen_height = window.winfo_screenheight()
    x = (screen_width - width) // 2
    y = (screen_height - height) // 2
    window.geometry("{}x{}+{}+{}".format(width, height, x, y))

window = tk.Tk()
window.geometry("400x300")
window.after(0, lambda: center_window(window))
window.mainloop()

这样,当你拖动窗口时,窗口会自动居中显示在屏幕上。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

软件测试|超好用超简单的Python GUI库——tkinter(四)

首先自定义一个函数或者方法,然后将函数与按钮关联起来,最后,当用户按下这个按钮Tkinter 就会自动调用相关函数。...控件的常营属性如下所示:属性说明anchor控制文本所在的位置,默认为中心位置(CENTER)activebackground当鼠标放在按钮上时候,按妞的背景颜色activeforeground当鼠标放在按钮上时候...当按钮点击,执行该函数fg按钮的前景色font按钮文本的字体样样式height按钮的高度highlightcolor按钮控件高亮处要显示的颜色image按钮上要显示的图片justify按钮显示多行文本...as tkfrom tkinter import messageboxwindow = tk.Tk()# 设置窗口的标题window.title('登峰造极境')# 设置并调整窗口的大小、位置window.geometry.../SW/NE 等,这与anchor参数控制文本的显示位置,有着异曲同工之妙。

1.3K30

python tkinter 设计指南

resizable(0,0)或者resizable(False,False)不可更改 window.geometry() 设定主窗口的大小以及位置,当参数值为 None 表示获取窗口的大小和位置信息...window.quit() 关闭当前窗口 window.update() 刷新当前窗口 window.mainloop() 设置窗口主循环,使窗口循环显示(一直显示,指导窗口关闭) window.iconbitmap...(50,50) 设置窗口允许调整的最小范围,即宽和高各50 window.maxsize(400,400) 设置窗口允许调整的最大范围,即宽和高各400 window.attributes("-alpha...as tk window = tk.Tk() window.title('c语言中文网') # 设置窗口大小变量 width = 300 height = 300 # 窗口居中,获取屏幕尺寸以计算布局参数...,比如当鼠标离开输入框的时候 控件的发生改变的时候触发事件,比如调整了控件的大小等 当控件的状态从“激活”变为“未激活”触发事件 当控件销毁的时候触发执行事件的函数 当窗口或组件的某部分不再被覆盖的时候触发事件

6.7K30

Tkinter教程(每天半小时,3天彻底掌握Tkinter)day1

是什么 Tkinter的弊端 第一个Tkinter程序 插入ico 关闭python窗体 python窗体居中设置 护眼色_颜色名称_16进制色值_RGB色值 主窗体设置 窗口常用方法 python获取电脑屏幕的大小...Tkinter 编写的程序,也称为 GUI 程序,GUI (Graphical User Interface)指的是“图形用户界面”,它是计算机图形学(CG)的一门分支,主要研究如何在计算机中表示图形,...() 是否允许用户拉伸主窗口大小,默认为可更改,当设置为 resizable(0,0)或者resizable(False,False)不可更改 window.geometry() 设定主窗口的大小以及位置...,当参数值为 None 表示获取窗口的大小和位置信息。...(50,50) 设置窗口允许调整的最小范围,即宽和高各50 window.maxsize(400,400) 设置窗口允许调整的最大范围,即宽和高各400 window.attributes("-alpha

5.1K20

软件测试|超好用超简单的Python GUI库——tkinter(二)

(0,0)或者resizable(False,False)不可更改window.geometry()设定主窗口的大小以及位置,当参数值为 None 表示获取窗口的大小和位置信息。...当 Tkinter 使用 WM_DELETE_WINDOW 协议与主窗口进行交互Tkinter窗口右上角x号的关闭功能失效,也就是无法通过点击x来关闭窗口,而是转变成调用用户自定义的函数。...设置窗的位置当我们运行 Tkinter 程序时,主窗口都会出现在距离屏幕左上角指定的位置上,这是由 Tkinter 软件包默认设置的。...但是在许多情况下,我们需要根据实际情况来移动窗口在电脑屏幕上的位置,这时应该如何处理呢?...,包括窗口大小,颜色,标题,位置的设置,后面我们将介绍tkinter标签控件的操作。

2.6K30

Python 笔记:GUI编程(Tkinter)

label比较类似 Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间 Scrollbar 滚动条控件,当内容超过可视化区域使用...控件有特定的几何状态管理方法,管理整个控件区域组织,一下是Tkinter公开的几何管理类:包、网格、位置 几何方法 描述 pack() 包装; grid() 网格; place() 位置; 以上内容转自...:http://www.runoob.com/python/python-gui-tkinter.html 设置标题和大小以及窗口位置 123456789101112131415 from tkinter...import * root = Tk() root.title("TkinterSimple")#窗口大小width ,height= 600, 600#窗口居中显示root.geometry('%dx...from tkinter import * root = Tk() root.title("TkinterSimple")#窗口大小width ,height= 600, 600#窗口居中显示root.geometry

5.1K30

目录

此时,你可以制作一些普通的窗口来显示消息,但尚未创建功能完善的应用程序。在下一节中,你将学习如何使用Tkinter强大的几何管理器来控制应用程序的布局。...对于给定的小部件,打包算法具有两个主要步骤: 计算一个矩形区域称为地块,这只是高(或宽)足以容纳窗口小部件并填补了空白空间窗口中剩余的宽度(或高度)。 除非指定其他位置,否则将小部件居中。...扩大窗口,三个Frame小部件的宽度会增加以填充窗口: 但是请注意,这些Frame小部件不会在垂直方向上展开。 所述side的关键字参数.pack()指定在其上的窗口侧的窗口小部件应放置。...试一下weight和minsize参数,看看它们如何影响网格。 默认情况下,小部件在其网格单元中居中。...在本教程中,你已经学到了一些重要的Tkinter概念: 如何使用小部件 如何使用几何图形管理器控制应用程序布局 如何使你的应用程序具有交互性 如何使用五个基本Tkinter的部件(Label,Button

29.6K20

Tkinter学习笔记一:第一个简单的python图形界面程序

参考资料 B站教学视频 IT兄弟连 Python视频教程 Python核心方法 tkinter Tkinter 做简单的窗口视窗 (GUI 莫烦 Python 教程) 程序基本功能 选择数据——生成柱形图...——保存到指定的位置 结果 ?...() 获取文件夹路径 tkinter.filedialog.askdirectory() 需要改进的地方: 1、如何控制图形界面中图片的摆放位置?...比如本次结果中我想要石榴的图片居中显示如何实现?本次结果中的图片位置偏左,看起来有点怪! 2、如何将生成的结果图以弹窗的形式显示出来,在弹出之前还要问是否显示。...3、如何将结果打包成一个可执行文件,直接通过鼠标点击启动,而不需要通过命令行启动图形界面。

1.4K20

Tkinter教程(每天半小时,3天彻底掌握Tkinter)day2

ipadx,ipady 用于控制内边距,在单元格内部,左右、上下方向上填充指定大小的空间。 padx,pady 用于控制外边距,在单元格外部,左右、上下方向上填充指定大小的空间。...在学习 Tkinter GUI 编程的过程中,不仅要学会如何摆放这些控件,还是掌握各种控件的功能、属性,只有这样才能开发出一个界面设计优雅,功能设计完善的 GUI 程序。...控件类型 下表列出了 Tkinter 中常用的 13 个控件: 控件类型 控件名称 控件作用 Button 按钮 点击按钮触发/执行一些事件(函数) Checkbutton 复选框 多项选择按钮,用于在程序中提供多项选择框...为组件提供一个框架,允许用户自己划分窗口空间 Radiobutton 单选框 单项选择按钮,只允许从多个选项中选择一项 Scale 进度条控件 定义一个线性“滑块”用来控制范围,可以设定起始值和结束值...属性名称 说明 anchor 控制文本(或图像)在 Label 中显示的位置(方位),通过方位的英文字符串缩写(n、ne、e、se、s、sw、w、nw、center)实现定位,默认为居中(center)

3.9K20

Python 图形化界面基础篇:添加单选按钮( Radiobutton )到 Tkinter 窗口

在本文中,我们将详细解释如何Tkinter 窗口中添加单选按钮,并如何获取用户所做的选择。 什么是 Tkinter 单选按钮( Radiobutton )?...让我们开始学习如何Tkinter 窗口中添加单选按钮。 步骤1:导入 Tkinter 模块 首先,请确保你已经安装了 Python 并包含了 Tkinter 库。...步骤5:将单选按钮添加到窗口 一旦创建了单选按钮,需要使用 pack() 方法将它们添加到窗口中。这将确定单选按钮在窗口中的位置。...完整示例代码 以下是一个完整的示例代码,演示如何创建一个 Tkinter 窗口并在其中添加两个单选按钮,并在按钮点击获取用户选择的选项: import tkinter as tk # 创建Tkinter...我们定义了一个名为 button_click 的按钮点击事件处理程序,它会在按钮点击执行。在这个示例中,我们使用 get() 方法获取用户选择的单选按钮的值,并根据值更新标签的文本。

1.2K71

Python 图形化界面基础篇:添加文本框( Entry )到 Tkinter 窗口

在这篇文章中,我们将详细解释如何Tkinter 窗口中添加文本框,以及如何获取和处理用户输入的文本信息。 什么是 Tkinter 文本框( Entry )?...步骤5:将文本框添加到窗口 一旦创建了文本框,需要使用 pack() 方法将其添加到窗口中。这将确定文本框在窗口中的位置。...entry.pack() pack() 方法会根据窗口的大小和内容自动调整文本框的位置。...完整示例代码 以下是一个完整的示例代码,演示如何创建一个 Tkinter 窗口并在其中添加一个文本框,并在按钮点击获取文本框中的内容: import tkinter as tk # 创建Tkinter...然后,我们创建了一个文本框对象 entry ,将其附加到 root 窗口,用户可以在其中输入文本。 我们定义了一个名为 button_click 的按钮点击事件处理程序,它会在按钮点击执行。

1.8K40

Python 图形化界面基础篇:添加复选框( Checkbutton )到 Tkinter 窗口

在本文中,我们将详细解释如何Tkinter 窗口中添加复选框,并如何获取用户所做的选择。 什么是 Tkinter 复选框( Checkbutton )?...步骤5:将复选框添加到窗口 一旦创建了复选框,需要使用 pack() 方法将其添加到窗口中。这将确定复选框在窗口中的位置。...checkbox.pack() pack() 方法会根据窗口的大小和内容自动调整复选框的位置。...完整示例代码 以下是一个完整的示例代码,演示如何创建一个 Tkinter 窗口并在其中添加一个复选框,并在按钮点击获取复选框的值: import tkinter as tk # 创建Tkinter窗口...我们定义了一个名为 button_click 的按钮点击事件处理程序,它会在按钮点击执行。在这个示例中,我们使用 get() 方法获取复选框的值,并根据值更新标签的文本。

71450

Python 图形化界面基础篇:使用网格布局( Grid Layout )排列元素

以下是一个示例,演示如何创建一个标签和一个按钮,并将它们放置在网格布局中的不同位置: # 创建一个标签 label = tk.Label(grid_frame, text="这是一个标签") # 将标签放置在第...标签放置在第 0 行第 0 列,按钮放置在第 1 行第 1 列。 步骤5:自定义网格布局 网格布局提供了很多选项来自定义网格中元素的排列和外观。...完整示例代码 下面是一个完整的示例代码,演示如何创建一个 Tkinter 窗口,并使用网格布局排列标签和按钮: import tkinter as tk # 创建Tkinter窗口 root = tk.Tk...最后,启动了 Tkinter 的主事件循环,使窗口可交互。 结论 在本文中,我们学习了如何使用 Tkinter 中的网格布局来排列和布局 GUI 元素。...通过将界面划分为行和列的网格,我们能够精确控制元素的位置和布局。在实际的 GUI 应用程序中,网格布局是一个非常有用的工具,可以帮助你创建出色的用户界面。

95560

软件测试|超好用超简单的GUI库——tkinter(三)

前言 前面我们介绍了tkinter窗口的一系列操作,本篇文章我们将介绍Label控件,Label(标签)控件,是 Tkinter 中最常使用的一种控件,主要用来显示窗口中的文本或者图像,并且不同的 Lable...label常用属性 Label(标签)的常用属性如下表: 属性名称 说明 anchor 控制文本(或图像)在 Label 中显示的位置(方位),通过方位的英文字符串缩写(n、ne、e、se、s、sw、w...、nw、center)实现定位,默认为居中(center) bg 用来设置背景色 bd 即 borderwidth 用来指定 Label 控件的边框宽度,单位为像素,默认为 2 个像素 bitmap 指定显示在...,如果是 True,表示该标签接受输入焦点 text 用来指定 Lable 显示的文本,注意文本内可以包含换行符 underline 给指定的字符添加下划线,默认值为 -1 表示不添加,当设置为 1 ,...下面对它做简单的介绍,示例如下: from tkinter import * #创建主窗口 win = Tk() win.config(bg='#8DB6CD') win.title("拜仁慕尼黑")

1K30

python中tkinter窗口位置坐标大小等实现示例

正在尝试着做一个比较完善的画图软件,计划使用tkinter库中的canvas控件来做,然后正在攻关图形项位置、坐标、大小及其他属性项的保存和加载的问题,刚好需要用到坐标、位置的知识,因此作为这个画图软件的附带产出物...好的,言归正传,回归本篇博文的主题:python中tkinter窗口位置|坐标\大小等知识的科普。 大家都知道tkinter库中有很多控件和主窗口,因此这些控件和主窗口都有对应的屏幕坐标的信息。...(4)一个很重要的知识点 我们使用上述的方法得到的位置和宽高,其实是tk初始化时的一个值。因此在初始化的时候默认都是1,如果需要获取准确的位置和大小信息此时我们调用update方法,刷新win窗口。...root.winfo_screenheight() root.geometry("%dx%d" %(w, h)) #方法三 root = Tk() root.attributes("-fullscreen", true) 设置居中显示...到此这篇关于python中tkinter窗口位置\坐标\大小等实现示例的文章就介绍到这了,更多相关python中tkinter窗口位置\坐标\大小内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持

2.3K60

树莓派综合项目2:智能小车(二)tkinter图形界面控制

其它基础内容会在文集:树莓派基础实验当中讲解。...: [aenqisnja2.jpeg] (三)创建基本窗口 #创建基本窗口 import tkinter as tk # 将tkinter导入到工程中 window =...') # 设置窗口大小,注意这里的x是英文字母x #如果需要规定窗体打开的位置,可以在在380x390后面加上“+10+10”, # 即横坐标为10,纵坐标为10 的位置 window.resizable...1.pack是一种相对布局方式,指定控件的相对位置,精确位置会由系统完成。 pack布局没有任何属性参数,默认会自上而下垂直并且水平居中排列。...该车的行进控制与履带车的行进控制类似: 前进和后退很简单,左右两边的方向都朝前或朝后,速度一致; 原地顺时针旋转,左边轮子前进,右边轮子后退,速度一致; 原地逆时针旋转,左边轮子后退,右边轮子前进

2.6K30

Python 图形化界面基础篇:添加按钮( Button )到 Tkinter 窗口

我们将详细解释如何Tkinter 窗口中添加按钮,以及如何为按钮定义响应函数,使其在点击执行特定操作。 什么是 Tkinter 按钮( Button )?...步骤5:将按钮添加到窗口 一旦创建了按钮和响应函数,需要使用 pack() 方法将按钮添加到窗口中。这将确定按钮在窗口中的位置。...button.pack() pack() 方法会根据窗口的大小和内容自动调整按钮的位置。...我们定义了一个名为 button_click 的响应函数,它将在按钮点击执行。在这个示例中,我们将标签的文本更新为"按钮点击了!"。...结论 在本文中,我们学习了如何Tkinter 窗口中添加按钮,以及如何为按钮定义响应函数,使其在点击执行特定操作。

1.2K30

Python GUI编程学习笔记之tkinter界面布局显示详解

可以使用填充fill,展开expand和靠边side等选项来控制此几何体管理器。 pack的排放控件的形式就像将一个个控件按大小从上到下放过去 ?...在窗口不设定大小的而使用pack进行布局的情况下,窗口默认大小为刚好包裹所有控件的大小 默认情况下添加的控件是居中且占据整行的 ?...pack控件窗口的大小,当flag=0,那么窗口大小将不再仅仅包裹住所有控件,这时候窗口的高度和宽度设置才可以生效 pack_forget():移除控件,但并没有进行摧毁,可以再次使用pack或其他方式来显示...pack控件窗口的大小,当flag=0,那么窗口大小将不再仅仅包裹住所有控件,这时候窗口的高度和宽度设置才可以生效 grid_slaves():以列表方式返回本组件的所有子组件对象。...常用参数: x:控件在窗口中的x坐标 y:控件在窗口中的y坐标 ? relx,rely:与主窗口的相对位置,比如 ?

1.6K10
领券