【Python】Tkinterのラベルを使ってテキストを出力する方法

PythonのTkinterで作成したウィンドウ内にテキストを出力する方法を紹介します。

ウィンドウを内にテキスト出力する方法

テキストを出力する前にウィンドウを作成するコードを記入します。

import tkinter as tk

root = tk.Tk()
root.title('Label')

root.mainloop()

このコードはTkinterを使いウィンドウを作成しタイトルを’Label’としています。

ウィンドウを作成出来たら’label’変数を作成し’Label()’クラスを使いテキストを出力します。

label = tk.Label(root, text='Hello, World!')

引数には、’root’-ウィジェットを配置する親ウィンドウまたはフレーム-の変数を入れ’text’を使い表示するテキストを記載します。

このコードだけだとラベルを作成しただけでウィンドウ内に配置出来ていないので配置するコードを追加します。

label = tk.Label(root, text='Hello, World!')
label.pack()

‘pack()’メソッドは、ウィジェットを親ウィジェット内で配置するための方法の1つであり、ウィンドウサイズを調整して、ウィジェットを適切な位置に配置します。

‘pack()’メソッドの他にも、’grid()’メソッドや’place()’メソッドなどがありますが今回は、’pack()’メソッドを使っています。

‘pack()’メソッドには、配置を指定する引数がありますが必須ではないので今回は、空の状態で使用します。

ウィンドウ内にテキストを出力する一連のプログラムは下記コードになります。

import tkinter as tk

root = tk.Tk()
root.title('Label')

label = tk.Label(root, text='Hello, World!')
label.pack()

root.mainloop()
実行結果

Label()クラスの引数を紹介

今回は、’root’-ウィジェットを配置する親ウィンドウまたはフレームの指定-と’text’しか入力しませんでしたが’Label()’の引数は以下のようなものがあります。

  • ‘font’-ラベルに適用するフォント。
  • ‘foreground’-テキストの色。(‘fg’に省略可能)
  • ‘background’-ラベルの背景色。(‘bg’に省略可能)
  • ‘width’-ラベルの幅。
  • ‘height’-ラベルの高さ。
  • ‘anchor’-ラベルの位置揃え (“n”, “s”, “e”, “w”, “center” のいずれか)。
  • ‘justify’-ラベル内のテキストの配置 (“left”, “center”, “right” のいずれか)。
  • ‘padx’-ラベル内のテキストとラベルの端との水平方向の余白。
  • ‘pady’-ラベル内のテキストとラベルの端との垂直方向の余白。
  • ‘relief’-ラベルの境界線の種類 (“flat”, “groove”, “raised”, “ridge”, “solid”, “sunken” のいずれか)。
  • ‘bd’-ラベルの境界線の幅。
  • ‘image’-ラベルに表示する画像 (PhotoImageやBitmapImageのインスタンス)。
  • ‘compound’-テキストと画像の表示方法 (“center”, “bottom”, “left”, “right”, “top” のいずれか)。

これらの引数は省略可能なので必要に応じて引数を指定してください。