PythonでGUIを作成する際、Tkinterはよく使用されますが、デザインが古臭いと感じることもあります。そこで、Tkinterをベースにしたカスタマイズ可能なUIライブラリ、CustomTkinterを紹介します。

CustomTkinterの特徴

CustomTkinterは、角が丸いウィジェットの見た目が特徴で、通常のTkinterウィジェットのように利用できます。また、CustomTkinterはコードベースでGUIを作成しますが、慣れていないと作成に苦労することがあります。

CustomTkinterの基本的なコード

まず、CustomTkinterをインストールします。

$ pip install customtkinter

CustomTkinterの書き方はTkinterとよく似ています。例えば、テキスト入力欄とボタンがあるシンプルなGUIの場合、コードは以下のようになります。

import customtkinter

FONT_TYPE = "meiryo"

class App(customtkinter.CTk):
    def __init__(self):
        super().__init__()
        # メンバー変数の設定
        self.fonts = (FONT_TYPE, 15)
        # フォームサイズ設定
        self.geometry("350x200")
        self.title("Basic GUI")
        # フォームのセットアップをする
        self.setup_form()

    def setup_form(self):
        # CustomTkinter のフォームデザイン設定
        customtkinter.set_appearance_mode("dark")  # Modes: system (default), light, dark
        customtkinter.set_default_color_theme("blue")  # Themes: blue (default), dark-blue, green
        # テキストボックスを表示する
        self.textbox = customtkinter.CTkEntry(master=self, placeholder_text="テキストを入力してください", width=220, font=self.fonts)
        self.textbox.place(x=60, y=50)
        # ボタンを表示する
        self.button = customtkinter.CTkButton(master=self, text="クリックしてね", command=self.button_function, font=self.fonts)
        self.button.place(x=100, y=100)

    def button_function(self):
        # テキストボックスに入力されたテキストを表示する
        print(self.textbox.get())

if __name__ == "__main__":
    # アプリケーション実行
    app = App()
    app.mainloop()

このサンプルでは、ウィジェットの配置にplaceを使用していますが、placeは極力使用せず、gridpackを使用することをおすすめします。

まとめ

CustomTkinterは、PythonでモダンなGUIを作成するための強力なツールです。この記事では、その基本的な使用方法と特徴を紹介しました。これからPythonでGUIを作成する際には、CustomTkinterの使用を検討してみてください。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です