VBA別館・Python別館
GUI Tkinterを初めから - Tak
2018/11/01 (Thu) 20:55:00
tkinterを暫くの間GUIとして使っていきます。
① ウインドー作成
Excel VBAのUserformみたいなものです。
やること
・tkinterを使うことを宣言
・ウインドーの名前を決める
・大きさを決める
・空のウインドーを表示する
これらを処理するcodeを書きます(既出ですのでもうお分かりともいますが、これが基本のキです)。
-------------------
# tkintertest0.py
#import os, sys, time
import tkinter
root = tkinter.Tk()
root.title("My 1st GUI")
root.geometry("300x300")
#ここへ処理用のcodeを書く
root.mainloop()
--------------------------------
すべてここから始まりますので、ここは是が非でも覚えて下さい。
次回からこのウインドーにラベル・ボタン・入力窓などのパーツ(ウイッジェットと呼びます)を載せていきます。
Re: GUI Tkinterを初めから - Tak
2018/11/02 (Fri) 09:17:27
② 国旗を描く
----------------------
# 国旗を描く tkintertest1.py 11/2/2018
#!/usr/bin/env python
import tkinter
root = tkinter.Tk()
root.title("日本国国旗")
canvas = tkinter.Canvas(root, width = 600, height = 400)
canvas.place(x=0, y=0)
canvas.create_rectangle(205, 95, 210, 400,fill="brown")
canvas.create_rectangle(210, 105, 510, 300,fill="white")
canvas.create_oval(360-50, 200-50, 360+50, 200+50,fill="red")
canvas.create_oval(208-15, 80-15, 208+15, 80+15,fill="gold")
canvas.pack()
root.mainloop()
------------------------------
説明は次回。
Re: GUI Tkinterを初めから - Tak
2018/11/03 (Sat) 09:23:42
③ 国旗掲揚のcode説明
-----------------------
#キャンバスの大きさを決める
canvas = tkinter.Canvas(root, width = 600, height = 400)
#キャンバスの中心は、ウインドーの中心(0,0)
canvas.place(x=0, y=0)
#キャンバスにポールの矩形を書く準備をする、色は茶色
canvas.create_rectangle(205, 95, 210, 400,fill="brown")
#キャンバスに国旗の白地を書く準備をする
canvas.create_rectangle(210, 105, 510, 300,fill="white")
#キャンバスに赤い日の丸を書く準備をする
canvas.create_oval(360-50, 200-50, 360+50, 200+50,fill="red")
#ポール先端に金色の玉飾りを書く準備をする
canvas.create_oval(208-15, 80-15, 208+15, 80+15,fill="gold")
#以上を纏めて書き出す
canvas.pack()
#ハイ、お疲れ様と処理を終える
root.mainloop()
#少し専門的に言うと、準備とはthinterの関数に引数を与えて、その値通りにCanvas.pack()で表示しているのです。
-------------------------
以上です。意外に簡単でしょう。 覚える必要ありません、使うときにコピペして数値修正すればよいのです。