Tkinterでウィンドウのサイズ変更を無効にする方法
Tkinterのウィンドウは、デフォルトではマウスカーソルをウィンドウの端に合わせてドラッグすることで、自由にサイズを変更できるようになっています。しかし、アプリケーションによってはレイアウト崩れを防ぐためなど、ウィンドウサイズを固定したいケースもあります。
そのような場合は、resizable()メソッドを使うことで、ウィンドウのサイズ変更機能を無効にできます。このメソッドは幅と高さそれぞれに対してブール値(True/False)を受け取り、Falseを指定すると該当する方向のサイズ変更が禁止されます。
サンプルコード
# tkinterライブラリをインポート
from tkinter import *
# tkinterフレームのインスタンスを作成
win = Tk()
# ウィンドウサイズを設定
win.geometry("650x250")
# ラベルを作成して配置
Label(win, text= "Hello World", font=('Times New Roman bold',
20)).pack(pady=20)
# ウィンドウのサイズ変更を無効にする
win.resizable(False,False)
win.mainloop()実行結果
上記のコードを実行すると、次のようなTkinterウィンドウが表示されます。resizable()メソッドにFalseを渡しているため、このウィンドウはマウス操作ではリサイズできなくなります。

ポイント解説
- win.resizable(False, False):第1引数が幅方向、第2引数が高さ方向の設定です。どちらもFalseにすることで、縦横両方のサイズ変更を完全に無効化しています。
- 片方向だけ固定したい場合は、例えばwin.resizable(True, False)のように指定すれば、幅のみ変更可能なウィンドウになります。
- 最大化ボタン(Windowsの場合)も同時に無効化されるため、フルスクリーンへの切り替えを防ぎたい場合にも有効です。
-
ウィンドウを表示せずにtkinterでクリップボードの内容を取得する方法
アプリケーション開発において、クリップボードに格納されている内容を取得したいケースはよくあります。PythonのGUIライブラリ「tkinter」では、clipboard_get()メソッドを使うことで、クリップボード内のテキストデータに簡単にアクセスできます。クリップボードからデータを取得する仕組みclipboard_get()でクリップボードからテキストを取得すると、そのデータはキャッシュメモリ上に保持されます。これにより、プログラムのデバッグや、取得したテキストをフレーム(ウィジェット)上に表示して確認することが可能になります。基本的な流れは以下のとおりです。Tkインスタンスを作成し、ウ
-
tkinterでウィンドウを閉じる方法|destroy()メソッドの使い方を解説
tkinterを使えば、Pythonで手軽にGUIアプリケーションを作成できます。しかし、タイトルバー右上の×ボタン以外の方法でウィンドウやフレームを閉じたい場合、どのように実装すればよいか悩むこともあるでしょう。そのようなときに役立つのが、ウィンドウを破棄して閉じるための .destroy() メソッドです。tkinterの各ウィジェットや属性は互いに独立しているため、「ウィンドウを閉じる処理」を専用の関数として分離して定義できます。これにより、ボタンのクリックイベントからウィンドウを閉じる動作を自由に制御可能です。サンプルコード# ライブラリをインポート from tkinter impo