第 3 章 フレーム

◀ 3.18 イベント処理   【目  次】  3.20 オブジェクト名の設定と名前、パス名の取得 ▶

999999

 更新日:


 このホームページは Amazon Kindle 本の作成中の草稿です。日々、原稿を見直しているので、内容が変わることに留意して読んで下さい。本が出版され次第、このホームページは削除されます。

3.19 ウィンドウハンドルの取得(winfo_id)

フレームも OS から見れば、一つのウィンドウです。このウィンドウを OS が操作する識別子(ウィンドウハンドル)は、Misc クラスの「winfo_id」メソッドで取得できます。Windows の関数でウィンドウを操作する場合はこの識別子を用います。下記の書式を用います。Misc クラスメソッドを参照して下さい。

object.winfo_id()

このメソッドで取得される識別子は 10 進の整数値です。

 次のプログラムは、フレームのウィンドウハンドルを「object.winfo_id」メソッドで取得しています。取得前に「update」メソッドでフレームの描画を完了します。取得値を「print」出力しています。

1
import tkinter as tk
2
root = tk.Tk()
3
root.geometry('300x200+100+100')
4
frame = tk.Frame(root, bg='red')
5
frame.place(x=50, y=20, width=200, height=160)
6
frame.update()
7
hwnd= frame.winfo_id()
8
print('winfo_id:',hwnd)
9
root.mainloop()

 プログラムを実行すると、ウィンドウが表示され、ウィンドウハンドルが 10 進整数値として「print」出力されます。

winfo_id: 1115618