■独自クラス
import tkinter as tkimport tkinter.messagebox
class Application(tk.Frame):
def __init__(self):
master = tk.Tk() # ウィジェットを作成
super().__init__(master)
self.pack()
master.geometry("300x300") # ウインドウサイズ
master.title("tkinter") # ウインドウタイトル
btn_message = tk.Button(self, text = "Python/Tkinter", command=self.func_btn_click ) # ボタンオブジェクト作成
btn_message.pack() # ボタンオブジェクトを配置
btn_exit = tk.Button(self, text = "exit", command=self.func_btn_exit ) # exitボタンオブジェクト作成
btn_exit.pack() # ボタンオブジェクトを配置
# メッセージボタンクリック時に呼び出されるメソッド
def func_btn_click(self):
tk.messagebox.showinfo("title", "message")
# exitボタンクリック時に呼び出されるメソッド
def func_btn_exit(self):
# self.master.destroy() # widgetを破棄することで終了させる、今回はquitで終了
self.quit()
if __name__ == "__main__":
app = Application() # Applicationのインスタンス化
app.mainloop() # tk上のイベントを補足しイベントに対応した処理を実行する
■独自クラスからインスタンスを作成事項する実行モジュール
import tkinter_class
if __name__ == "__main__":
app = tkinter_class.Application() # Applicationのインスタンス化
app.mainloop() # tk上のイベントを補足しイベントに対応した処理を実行する