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