【Python】tkinter GUI 雛形

Python
この記事は約6分で読めます。

各局皆様、こんにちは。アマチュア無線局、JS2IIUです。

Tkinter テンプレ

自分用にtkinterを使ったGUIの雛形を置いておきます。WindowsでもMacでも、おそらくLinuxでもいけます。ご興味ある方はコピペして活用してください。

ウィンドウだけのテンプレ

何もないウィンドウが開くだけのシンプルなテンプレートです。

ラベルなどのウィジェットを追加する場合は、class Applicationのmaster.title()の後にlabel = tk.Label(・・・)というように追加してください。ウィジェットについては、このページの下に参考ページへのリンクを並べてありますのでそちらを参照ください。

import tkinter as tk

class Application(tk.Frame):
    def __init__(self,master):
        super().__init__(master)
        self.grid()

        master.geometry('400x400')
        master.title('tkinter template')


def main():
    root = tk.Tk()
    app = Application(master=root)
    app.mainloop()


if __name__ == "__main__":
    main()

ウィジェット部品ありテンプレ

tkinterのButton, Entry, Labelを入れたテンプレ。それぞれのウィジェットのよく使うオプションを並べてあります。ウィンドウだけのテンプレとは多少作りを変えています。

import tkinter as tk

class Application(tk.Frame):
    def __init__(self, master):
        super().__init__(master)
        self.pack()

        frame1 = tk.Frame(master)
        
        label1 = tk.Label(frame1,
                          width=15,
                          height=1,
                          text='Label 1',
                          # bg='white',
                          border=1,
                          font=('', 12, 'bold'),
                          justify=tk.CENTER,
                          padx=5,
                          pady=5,
                          # relief='ridge',
                          # textvariable=some_StringVar
                          )
        label1.pack()

        entry1 = tk.Entry(frame1,
                          background='white',
                          foreground='black',
                          width=15,
                          # font=('',10,'bold'),
                          justify=tk.CENTER,
                          relief='ridge',
                          # textvariable=some_StringVar,
                          border=1,
                          )
        entry1.pack()

        extbtn = tk.Button(frame1,
                           text='Exit',
                           # foreground='black'
                           # background='white',
                           font=('', 12, 'bold'),
                           # borderwidth=1,
                           height=1,
                           width=6,
                           justify=tk.CENTER,
                           padx=5,
                           pady=5,
                           # textvariable=some_StringVar,
                           command=quit
                           )
        extbtn.pack()
        frame1.pack()


def main():
    root = tk.Tk()

    root.geometry('400x200')
    root.title('tkinter template')

    app = Application(master=root)
    app.mainloop()


if __name__ == "__main__":
    main()

tkinterのウィンドウにmatplotlibのグラフを埋め込む

グラフ生成の部分を入れ替えて活用ください。38行目以降のmatplotlib関連の部分を変えればどんなグラフでも表示させることができます。

コードの埋め込みにgistを使ってみました。Wordpressのページを更新しなくてもコードだけ更新することができて便利かもしれません。最近GitHubに凝っているので、しばらくこれでやってみようかと思います。

参考

最後まで読んでいただき有難うございました。73

コメント

タイトルとURLをコピーしました