各局皆様、こんにちは。アマチュア無線局、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に凝っているので、しばらくこれでやってみようかと思います。
参考
tkinter— Tcl/Tk の Python インターフェースhttps://docs.python.org/ja/3/library/tkinter.html- Tkinter 8.5 reference: a GUI for Python
https://anzeljg.github.io/rin2/book2/2405/docs/tkinter/index.html - Modern Tk Best Practices
https://tkdocs.com - Gist の作成 – GitHub Docs
- Create a new Gist
最後まで読んでいただき有難うございました。73


コメント