方法1: ウィンドウの幅と高さを取得し、画面の幅と高さを取得して、適切な位置を計算する方法です。
import tkinter as tk
def center_window(window):
window_width = window.winfo_width()
window_height = window.winfo_height()
screen_width = window.winfo_screenwidth()
screen_height = window.winfo_screenheight()
x = (screen_width // 2) - (window_width // 2)
y = (screen_height // 2) - (window_height // 2)
window.geometry(f"{window_width}x{window_height}+{x}+{y}")
# ウィンドウを作成
root = tk.Tk()
root.title("ウィンドウを中央に配置する例")
# ウィンドウの内容を追加...
# ウィンドウを中央に配置
center_window(root)
# ウィンドウを表示
root.mainloop()
方法2: ウィンドウを画面の中央に配置するためのplace()
メソッドを使用する方法です。
import tkinter as tk
def center_window(window):
window.update_idletasks()
window_width = window.winfo_width()
window_height = window.winfo_height()
screen_width = window.winfo_screenwidth()
screen_height = window.winfo_screenheight()
x = (screen_width // 2) - (window_width // 2)
y = (screen_height // 2) - (window_height // 2)
window.place(x=x, y=y)
# ウィンドウを作成
root = tk.Tk()
root.title("ウィンドウを中央に配置する例")
# ウィンドウの内容を追加...
# ウィンドウを中央に配置
center_window(root)
# ウィンドウを表示
root.mainloop()
方法3: pack()
メソッドを使用して、ウィンドウを中央に配置する方法です。
import tkinter as tk
def center_window(window):
window.update_idletasks()
window_width = window.winfo_width()
window_height = window.winfo_height()
screen_width = window.winfo_screenwidth()
screen_height = window.winfo_screenheight()
x = (screen_width // 2) - (window_width // 2)
y = (screen_height // 2) - (window_height // 2)
window.pack()
window.geometry(f"+{x}+{y}")
# ウィンドウを作成
root = tk.Tk()
root.title("ウィンドウを中央に配置する例")
# ウィンドウの内容を追加...
# ウィンドウを中央に配置
center_window(root)
# ウィンドウを表示
root.mainloop()
これらの方法を使用すると、Tkinterを介して作成したウィンドウを画面の中央に配置できます。選択した方法に基づいてコードを適応させ、ウィンドウ配置の要件に合わせてカスタマイズしてください。