日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python的tkinter窗口位置\坐标\大小等知识(自用笔记)

發布時間:2025/4/5 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python的tkinter窗口位置\坐标\大小等知识(自用笔记) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大家都知道tkinter庫中有很多控件和主窗口,因此這些控件和主窗口都有對應的屏幕坐標的信息。因此我們可以分別進行介紹。
他是以電腦屏幕的左上角為原點,向右是x,向下是y的這樣的一個坐標系

一、關于主窗口的介紹:

我們見的比較多的命令如下:

window.geometry("300x200+100+50")

這是什么意思呢?

其實:第一個(300)是指窗口的寬度 x 第二個窗口(200)的高度 + 第三個窗口(100)左上點離左屏幕邊界距離 + 第四個窗口(50)左上點離上面屏幕邊界距離。

(1)窗口屬性設置

在上面程序的基礎上,在root = Tk()和root.mainloop()之間添加下面的代碼以在窗口中添加元素

窗口標題: window.title("title_a")

添加窗口圖標:window.iconbitmap(icon_file) #icon_file就是一個.ico的圖標文件,使用絕對或相對路徑

設置窗口大小:

window.geometry("x_WIDTH x x_HEIGHT") #其中將_WIDTH替換為窗口寬度,將_HEIGHT替換為窗口高度 設置窗口在屏幕上的位置: window.geometry("+X+Y") #X/Y表示以屏幕左上角為頂點的窗口的坐標 #或者是 window.geometry("x_WIDTH x x_HEIGHT+X+Y")

(2)常用的事件處理函數:

刷新窗口狀態: window.update()

銷毀窗口: window.destroy()

自動觸發事件: window.after(sec,command) #表示多少秒以后自動執行command

置頂窗口: window.wm_attributes('-topmost',1)

隱藏窗口外部: window.overrideredirect(True)

設置最大的窗口: window.maxsize(600, 400)

設置最小的窗口: window.minsize(300, 240)

設置窗口是否可以縮放(兩種方法):

window.resizable(width=False, height=False)#禁止改變窗口大小window.resizable(0, 0) # 設置窗口大小不可變

(3)獲取窗口的方法

winfo_x() 方法獲得窗口的x坐標,
winfo_y() 方法獲得窗口的y坐標
winfo_width() 方法獲得窗口的寬度
winfo_height() 方法獲得窗口的高度
以上四個方法都是無參方法,通過返回值我們可以獲得窗口的寬高。

from tkinter import *def go():txt = '窗口的左上角坐標為:(%s,%s)\n窗口的高度為:%s窗口的寬度為:%s' \% (root.winfo_x(),root.winfo_y(),root.winfo_width(),root.winfo_height())label1.configure(text=txt)root.after(1,go)root = Tk() root.geometry("300x200+100+50") label1 = Label(root) label1.pack(expand=YES) go() root.mainloop()

運行結果如下:

(4)一個很重要的知識點

我們使用上述的方法得到的位置和寬高,其實是tk初始化時的一個值。因此在初始化的時候默認都是1,如果需要獲取準確的位置和大小信息 此時我們調用update方法,刷新win窗口。

運行腳本如下:

import tkinter win = tkinter.Tk() win.geometry("100x100") print("初始化的窗口的寬度和寬度為 %s * %s" % (win.winfo_width(),win.winfo_height())) win.update() print("update后的窗口的寬度和寬度為 %s * %s" % (win.winfo_width(),win.winfo_height())) win.mainloop()

(5)常用的一些位置處理函數

設置窗口最大化

#設置窗口最大化: #方法一 root = Tk() w, h = root.maxsize() root.geometry("{}x{}".format(w, h)) #看好了,中間的是小寫字母x #方法二 root = Tk() w = root.winfo_screenwidth() h = root.winfo_screenheight() root.geometry("%dx%d" %(w, h)) #方法三 root = Tk() root.attributes("-fullscreen", true)

設置居中顯示

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.update()print(root.winfo_x())

調用腳本:

import tkinter as tk root = tk.Tk() root.title('測試窗口') center_window(root, 500, 340) root.mainloop()

二、關于控件的位置介紹

其實跟主窗口的訪問方式類似,主要是要找到對應的方法和函數。

import tkinter as tkdef 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)root.geometry(size)root.update()def go():txt = 'Label1控件的位置信息如下:%s' % label1.winfo_geometry()label2.configure(text=txt)root.after(1,go)root = tk.Tk() root.title('測試窗口') center_window(root, 500, 340) label1 = tk.Label(root, text='測試用途的Label控件') label1.pack(expand=tk.YES) label2 = tk.Label(root) label2.pack() go() root.mainloop()

主要用到的函數為:label1.winfo_geometry()

運行的效果如下:

具體參考:https://blog.csdn.net/dhjabc_1/article/details/105428853

總結

以上是生活随笔為你收集整理的python的tkinter窗口位置\坐标\大小等知识(自用笔记)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: a中文字幕| 欧美成年人在线观看 | 99亚洲欲妇| 欧美怡红院视频一区二区三区 | 亚洲性夜| 日韩视频 中文字幕 | 免费观看一区二区三区视频 | 一级中文字幕 | 欧洲金发美女大战黑人 | 91xxxxx| 逼特逼视频在线观看 | 欧美精品一区二 | 精品一区二区在线视频 | 国产短视频一区 | 一区视频 | 久久久国产精品一区 | 美女被男人插 | 午夜精品久久久久久久久久久久 | 五级毛片 | 国产一级免费av | 香蕉视频毛片 | 欧美v日韩 | 男人和女人做爽爽视频 | 成人午夜视频在线观看 | 欧美精品在线一区二区三区 | 欧美专区 日韩专区 | 久久久久国产一区二区三区潘金莲 | 激情五月综合色婷婷一区二区 | 男女涩涩网站 | 另类男人与善交video | 欧美亚洲一区二区三区四区 | 欧美高清hd18日本 | 久久久久久久久久艹 | 国产在成人精品线拍偷自揄拍 | 久久综合加勒比 | 日韩黄色片子 | 亚洲一区二区美女 | 亚洲三级大片 | 久久国产这里只有精品 | 久久av无码精品人妻系列试探 | 青青草好吊色 | 无码一区二区三区在线 | 亚洲成人中文 | 欧美一区二区三区视频在线观看 | 精品国产乱码久久久久久88av | 日本在线视频www | 国产无套丰满白嫩对白 | 交视频在线播放 | 织田真子作品 | 亚洲老女人av| 国产美女精品视频国产 | 色妞色视频一区二区三区四区 | 宝贝乖h调教灌尿穿环 | 久久综合操 | 天天干天天做 | 色综综 | 国产色无码精品视频 | 国产黄频在线观看 | 欧美大屁股熟妇bbbbbb | 国产91美女视频 | 免费在线 | 最好看的中文字幕国语电影mv | 国产精品久久久久毛片大屁完整版 | 久操操| 天天干天天谢 | 日韩中文字幕av在线 | 97视频一区二区三区 | 成年人高清视频 | 欧美日韩一级大片 | 欧美呦呦呦 | 精品视频一区在线观看 | 黄色国产大片 | 黄色中文字幕 | 欧美色图12p | 青青草原免费观看 | 一级作爱视频 | 91久久久久久久 | 91久久国产综合久久91精品网站 | 国产av无码专区亚洲精品 | 国产一区二区av在线 | 日韩岛国片 | av福利在线免费观看 | 妞干网这里只有精品 | 99精品影视| 日本久草视频 | 欧美污视频在线观看 | 国产一区二区小说 | 国产网站精品 | 天天射夜夜爽 | 欧美一区二区三区四区在线观看 | 日韩欧美高清在线视频 | 在线观看国产91 | 天天综合久久综合 | 六月婷婷在线 | 国产日韩欧美视频在线观看 | 国产综合免费视频 | 欧美一级片在线播放 | 免费精品视频 | 精品一区二区三区无码按摩 |