このホームページは Amazon Kindle 本の作成中の草稿です。日々、原稿を見直しているので、内容が変わることに留意して読んで下さい。本が出版され次第、このホームページは削除されます。
3.19 ウィンドウハンドルの取得(winfo_id)
フレームも OS から見れば、一つのウィンドウです。このウィンドウを OS が操作する識別子(ウィンドウハンドル)は、Misc クラスの「winfo_id」メソッドで取得できます。Windows の関数でウィンドウを操作する場合はこの識別子を用います。下記の書式を用います。Misc クラスメソッドを参照して下さい。
object.winfo_id()
このメソッドで取得される識別子は 10 進の整数値です。
次のプログラムは、フレームのウィンドウハンドルを「object.winfo_id」メソッドで取得しています。取得前に「update」メソッドでフレームの描画を完了します。取得値を「print」出力しています。
import tkinter as tk | |
root = tk.Tk() | |
root.geometry('300x200+100+100') | |
frame = tk.Frame(root, bg='red') | |
frame.place(x=50, y=20, width=200, height=160) | |
frame.update() | |
hwnd= frame.winfo_id() | |
print('winfo_id:',hwnd) | |
root.mainloop() |
プログラムを実行すると、ウィンドウが表示され、ウィンドウハンドルが 10 進整数値として「print」出力されます。
winfo_id: 1115618