VBA別館・Python別館

64462

GUIスタート ウインドーを作る - Tak

2018/10/31 (Wed) 09:36:56

今回からPython別館と名称変更しました。 何故ならPythonに専念するからです。

先ず分かり易くて簡単なGUI Tkinterからスタートします。 Pythonがインストールして有れば、Tkinterも一緒にインスト-ルされております。 Tkinterの簡単な説明は10/10にあります。

① ウインドーに円を画く

下記codeをnew fileに書いて下さい。

------------------------
import tkinter as tk

#ウィンドウを作る
root = tk.Tk()
root.title("This is Tak's first sample")
root.geometry("600x400")

#Canvasを作る
canvas = tk.Canvas(root, width=600, height=400, bg="white")
canvas.place(x=0, y=0)

#円を描く
canvas.create_oval(300-50, 200-50, 300+50, 200+50,fill="red")

root.mainloop()

------------------------

余りに簡単で涙も出ませんね。 code説明は次回。

Re: GUIスタート ウインドーを作る - Tak

2018/10/31 (Wed) 17:37:38

② 円描写codeの説明


-------------------------
import tkinter as tk 
#as tkと省略型に出来るが、、その後のtkiner.はtk.とすること。

#ウィンドウを作る
root = tk.Tk()
root.title("This is Tak's first sample")
#ウインドーのタイトル

root.geometry("600x400") #ウインドサイズ(px)。
#600x400pxサイズのCanvasを作り、そこへ円を描写する。

canvas = tk.Canvas(root, width=600, height=400, bg="white")
#ウンドーと同じサイズのcanvasを作る

canvas.place(x=0, y=0) 
#canvaのセンター(0,0)。

#円を描く
canvas.create_oval(300-50, 200-50, 300+50, 200+50,fill="red")
#300-50は最初から250としても良いが、円のセンターが300pxですよと分かるようにこう書くことが多い。

#canvas.create_oval(300-A, 200-B, 300+C, 200+D,fill="red")
#円のセンターが300px。
#A又はCを10にすると縦長の楕円、BまたはDを10とすると横長楕円になる。

root.mainloop()
#この命令で処理が始まる。

割と素直な書き方ですので、理解し易いと思います。

Re: GUIスタート ウインドーを作る - Tak

2018/10/31 (Wed) 20:23:09

③ ウインド作成

本当はこれが最初に来るはずでしたが、なにか描けたほうが興味を持ってもらえるかなと思い、丸を描くcodeを書きました。

これからはこのウインドー上で、丸や四角・キャラクターなどの描写や移動などをグラフィカルに処理できるようになります(時間が掛かるけど)。

ではまずウインドーを表示させましょう。

書くのは今まで通りPython Shellの上です。

#の後は忘備録や説明用コメントですので、動作には関係ありません。 


---------------------

#thintertest3.py

#!/usr/bin/env python
# -*- coding: utf8 -*-
#import sys

import tkinter


# GUI設定
root = tkinter.Tk()
root.title(u"tkinterのCanvasを使ってみる")
root.geometry("403x303")

#キャンバスエリア
canvas = tkinter.Canvas(root, width = 400, height = 300)#Canvasの作成
canvas.create_rectangle(0, 0, 400, 300, fill = 'green')#塗りつぶし

#キャンバスバインド
canvas.place(x=0, y=0)#Canvasの配置

root.mainloop()

--------------------------------

これをrunさせると、図の様な何も書いていない緑色のウインドーが現れます。

次回に説明を致します。



Re: GUIスタート ウインドーを作る - Tak

2018/11/01 (Thu) 17:23:33



codeの説明。 

----------------------------

#thintertest3.py

#!/usr/bin/env python
# -*- coding: utf8 -*-
#import sys
ここまではコメント。 そのうち使いますので、意味はその時にお話しします。

import tkinter
tkinterと言うPython付属のライブラリー(関数群と思ってください)を呼び出しています。 

# GUI設定
root = tkinter.Tk()
「tkinterと言うウインドーを使います」と宣言。

root.title(u"tkinterのCanvasを使ってみる")
そのウインドーの名前は"tkinterのCanvasを使ってみる"です。 "u"はこの親ウインドーと関係ありそうですが、ここでは不問にします。

root.geometry("403x303")
ウインドーの大きさが400x400pxですが、枠として+3しておきました。

#キャンバスエリア
canvas = tkinter.Canvas(root, width = 400, height = 300)#Canvasの作成
canvas.create_rectangle(0, 0, 400, 300, fill = 'green')#塗りつぶし

#キャンバスバインド
canvas.place(x=0, y=0)#Canvasの配置

root.mainloop()
このcodeで処理が完了です。

名前
件名
メッセージ
画像
メールアドレス
URL
文字色
編集/削除キー (半角英数字のみで4~8文字)
プレビューする (投稿前に、内容をプレビューして確認できます)

Copyright © 1999- FC2, inc All Rights Reserved.