【Hello World編その1】Tkinterを使用して画面を作成してみよう!

本日の課題

本日はHellowWorld編その1ということで、

簡単な画面を作成してみようと思います。

開発環境

Pythonを実行できるようにしよう!

今回の講座ではPythonの3系を使用します。

Pythonの2系でも実施は可能ですが、

やや文法が異なっていたりするので、Python3系の環境を整えていただくことをおススメします!

下記からダウンロードできます!

https://www.python.org/

Pythonのバージョンを確認しよう!

コマンドプロンプトを立ち上げて、pythonと入力してみましょう!

python versionの確認

バージョンが正しく表示されていればPythonの開発環境は整っていますので

exit()と入力し、Pythonを一旦閉じましょう!

※ここでエラーが出てしまった場合は環境変数が正しく設定されていない可能性があります。

PATHにpythonをインストールしたディレクトリを追加し、python.exeが実行できるようにしましょう!

 

実践

Pythonファイルを作成しよう!!

適当なフォルダを作成しHelloWorld_01.pyを作成しましょう。

※HelloWorld_01.py.txtと間違って作成した場合.txtは削除しHelloWorld_01.pyに修正してください。

helloworldpy

ファイル直接実行できるよう準備しよう!

HelloWorld_01.pyファイルを開き、下記のコードを書きましょう。

if __name__ == '__main__':

このコードをなぜ書いたかというと

コマンドプロンプト上で下記のようにコマンドを入力したときに直接実行されるようにしたいからです。

python HelloWorld_01.py

 

Tkinterをimportしよう!

TkinterはPythonに標準で入っているGUIライブラリです。

別途インストールする必要もなく、初学習者にはもってこいのライブラリです。

ではHelloWorld_01.pyファイルにTkinterをimportしよう!

from tkinter import *

if __name__ == '__main__':

from パッケージ名 improt *

とすることでtkinterパッケージをすべてimportすることができます。

※import文はファイルの上部に記載してください。

画面を出してみよう!

HelloWorld_01.pyファイルに画面を出すコードを書きましょう。

from tkinter import *

if __name__ == '__main__':
    #Tkインスタンスを作成し、app変数に格納する
    app  = Tk()
    #格納したTkインスタンスのmainloopで画面を起こす
    app.mainloop()

書いたらコマンドプロンプトを立ち上げて下記コマンドを入力しましょう。

python HelloWorld_01.py

cant open file~というエラーが出た場合はファイルのパスが間違っている場合があります。

python(半角スペース)Pythonファイルのフルパス で実行してみてください。

上記のようなウィンドウが立ち上がれば成功です!!

画面サイズとタイトルを変更しよう!

いよいよ今回の講座も大詰めです。

タイトルと、画面サイズを変更したいと思います。

まず画面サイズから

from tkinter import *

if __name__ == '__main__':
    #Tkインスタンスを作成し、app変数に格納する
    app  = Tk()
    #縦幅400横幅300に画面サイズを変更します。
    app.geometry("400x300")
    #格納したTkインスタンスのmainloopで画面を起こす
    app.mainloop()

app.geometry(“400×300”)というコードを追加しました。

このコードを記述することで画面サイズが変更されます。

続いて画面タイトルを変更します。

from tkinter import *

if __name__ == '__main__':
    #Tkインスタンスを作成し、app変数に格納する
    app  = Tk()
    #縦幅400横幅300に画面サイズを変更します。
    app.geometry("400x300")
    #タイトルを指定
    app.title("Hello World Program")
    #格納したTkインスタンスのmainloopで画面を起こす
    app.mainloop()

app.title(“Hello World Program”)とすることで、タイトル名がTk→Hello World Programに変更されます。

では実際に先ほど画面を出したときと同じく下記コードを実行してみましょう。

python HelloWorld_01.py

変更後画面

いかがでしょうか。画面サイズとタイトルは変更されたでしょうか?

変更されていれば今回の講座は終了です。

お疲れ様でした。

 

よくあるエラー

IndentationError: unexpected indentと出た場合は

タブやスペース(インデント)が揃っていないことが原因である可能性があります。

Pythonは;(セミコロン)や{}(中括弧)を使用しない代わりに、

インデントを見てプログラムのブロック、コードを区別しています。

上記のエラーが出てしまったときはインデントの見直しを行ってみてください。

 

まとめ&次回予告

初めてのGUIその1はいかがでしたでしょうか。

今回は簡単にウィンドウというものを作成しましたが、

CUIとは違って未来に可能性を感じたのではないですか?

次回は今回の続きとして【Hello World編その2】をやっていきたいと思います。

See you soon.

あわせて読みたい