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

#!/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()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章