【Python】Tkinterを使って自作UIを作成しよう1【画面表示編】

プログラミングのKnow-howを共有しましょう

【Python】Tkinterを使って自作UIを作成しよう1【画面表示編】

スポンサーリンク

今回はPythonのTkinterというライブラリを使ってUIを含んだプログラムを作成していきたいと思います。基本編のため凝ったことはしないので、Tkinterに興味を持っている方はぜひご覧になってください。

この記事シリーズではPythonのTkinterというライブラリの基本的な使い方を紹介していきます。その中でも今回は、

Tkinterを使ってテキストが書かれたUI画面を表示する方法

を解説していきます。

それでは早速ソースを見ていきましょう。

Tkinterを使ってウィンドウを表示する

ソースコードは以下の通りです。

1行ずつ見ていきましょう。

ここではTkinterライブラリのインポートをしています。この宣言を忘れるとそこから下のソースでエラーが発生してしまいます。

tkinterライブラリのTkクラスのインスタンスを”root”という名前で作成しています。このrootはプログラム実行時、一番最初に表示されるウィンドウとなります。Tkinterライブラリはこのrootを親とした木構造でウィンドウやその機能を定義していきます。
木構造という概念がわからない方は以下をご参照ください。

木構造_(データ構造)

以降、このrootが持つメソッドを活用してウィンドウの仕様を定義していきます。

.titleメソッドは、ウィンドウの名前を定義します。ここで定義した内容がウィンドウバーに表示されます。

.geometryメソッドは、表示されるウィンドウの大きさや表示される位置を定義します。
x座標、y座標の始点は(x,y)=(0,0)で、これはデスクトップ画面の左上を表します。
この例であれば、デスクトップ画面の左上からx方向、y方向共に+100ピクセルの位置にウィンドウの左上端が来るように表示されます。
文章ではわかりにくいので、実際に値を変えながら実行してみましょう。Macの場合、以下の画像のようにウィンドウが表示されるはずです。

 

ウィンドウ上にテキストを挿入する

ウィンドウを表示することはできました。次のステップに移りましょう。
今度はウィンドウ上に任意のテキストを表示させるようにしましょう。
そのソースコードは以下になります。

追加するテキストのフォントやサイズを指定するメソッドであるtkinter.fontをfontとしてインポートしておきます。

先ほどインポートしたtkinter.fontを使い、フォントのサイズ(size)、太さ(weiht)を定義しています。
この他にも書体(font)、下線(underline)なども定義することができます。

tkinter.Labelを用いて、ウィンドウに表示するテキストを定義しています。引数の内容は順番にテキストを表示するウィンドウ(root)、テキストの内容(text)、テキストのフォント(font)です。
ここで注意して欲しいのが、この1行だけではウィンドウにテキストが表示されないということです。
テキストの配置は以下のコードで別に定義します。

ここでテキストがウィンドウ上のどこに配置されるのかを定義します。この例の設定では、ウィンドウの中心に文字列が表示されるようになります。
label.packというメソッドを使って定義していますが、実は他にもlabel.grid,label.placeという配置用のメソッドがありそれぞれ様々なオプションが用されています。ここでは詳しく解説しませんがTkinterで開発していく上で覚えておくべきメソッドなので、とりあえず存在だけは知っておきましょう。

さて、ここまでのソースを保存して実行すると、以下のようなウィンドウが表示されるはずです。

まとめ

これでTkinterを用いたウィンドウ作成、ウィンドウ上のテキスト表示が可能になったと思います。
テキスト表示についてはメソッドやオプションが多すぎて解説不足感が否めませんが、実装するまでの大きな流れをこの記事では書きたかったのであえて割愛しました。

次回はボタンの配置&機能の実装を解説していきます。
よろしければご覧ください。

ここまで読んでいただきありがとうございます。
よろしければ他の記事も読んでみてください。