今日も見に来てくださって、ありがとうございます。石川さんです。
透明なキャンバスを重ねるというアイディアを実現しようといろいろ調べまわりましたが、なかなか良いものが見つかりません。その中で見つけたちょっと面白い技を紹介します。透明なウィンドウです。
出来上がりイメージ
ソースコード
import tkinter as tk class Application(tk.Tk): def __init__(self): super().__init__() self.title("Transparent window") self.geometry("500x300") self.config(bg="white") self.attributes("-transparentcolor", "white") if __name__ == "__main__": application = Application() application.mainloop()
説明
ポイントはただ一つ、9行目の「self.attributes(“-transparentcolor”, “white”)」です。これで透明になる色をセットしています。この場合、白(”white”)ですね。8行目でbg(背景色)に白を設定しています。この色が透明になる、ということで画像のようなウィンドウが出来上がります。
まとめ
背景を透明にすることで、変わった形のウィンドウを作ったり、特殊な効果を実現することができそうですね。ちなみに、Raspbianではうまく動作しない、と、言われていました。