Tkinterで透明な背景を持つウィンドウを作成する方法
Tkinterのウィンドウには、アプリケーションをスムーズに動作させるためのさまざまな組み込み関数やプロパティが用意されており、GUIの構成にも幅広く活用できます。
アプリケーション内で透明なウィンドウを作成したい場合は、attributes('-transparentcolor', 'color')メソッドを使用します。このメソッドにウィンドウやウィジェットの背景色を指定すると、その色に一致する部分が透明になり、透過したウィンドウを実現できます。
コード例
#Import the Tkinter Library
from tkinter import *
#Create an instance of Tkinter Frame
win = Tk()
#Set the geometry of window
win.geometry("700x350")
#Add a background color to the Main Window
win.config(bg = '#add123')
#Create a transparent window
win.wm_attributes('-transparentcolor','#add123')
win.mainloop()
実行結果
上記のコードを実行すると、背景が透明になったウィンドウが表示されます。

仕組みのポイント
-transparentcolorオプションは、指定した色と完全に一致するピクセルを透明として扱う仕組みです。そのため、ウィンドウ全体を透明にしたい場合は、config(bg=...)で設定した背景色と、wm_attributesに渡す色を同じ値にする必要があります。
注意点
この-transparentcolorオプションはWindows環境でのみ有効です。macOSやLinuxでは期待どおりに動作しない場合があるため、クロスプラットフォーム対応が必要なアプリケーションでは、OSごとの挙動を確認しておきましょう。
-
Python Tkinterでフレームレス(枠なし)ウィンドウを作成する方法
Tkinterは、PythonでGUIアプリケーションを開発する際に最も広く使われている標準ライブラリです。ボタンやラベルなどのウィジェット追加をはじめ、GUI構築に必要なさまざまな機能が標準で備わっています。 ここでは、Tkinterを使ってタイトルバーや境界線のない「フレームレス(ボーダーレス)ウィンドウ」を作成する方法を解説します。フレームレスウィンドウを実現するには、overrideredirectメソッドを使用します。このメソッドを有効にすると、OSのウィンドウマネージャーによる装飾が無効化され、閉じるボタン、タイトルバー、最小化ボタンといったウィンドウ要素がすべて取り除かれます。
-
Python tkinterでボタンを作成する方法|標準tkinterとttkの違いも解説
PythonのGUIライブラリ「Tkinter」には、ウィンドウ上にボタンを作成するためのさまざまな方法が用意されています。この記事では、標準のtkinterモジュールを使ったボタンの作成方法と、テーマ機能を持つtkinter.ttkモジュールを使ったボタンの作成方法の2通りを、サンプルコードとともにわかりやすく解説します。 tkinterモジュールでボタンを作成する 以下のプログラムでは、まずウィンドウを作成し、続いてButtonクラスを使ってボタンを生成しています。tkinterモジュール全体をインポートしているため、作成されたボタンには従来型のスタイル(テーマ)が適用されます。 主なパラ