Python
 Computer >> コンピューター >  >> プログラミング >> Python

TkinterのTextウィジェットにリストを表示する方法

TkinterのTextウィジェットは、複数行のテキスト入力を受け付けるためのウィジェットです。豊富なプロパティと組み込み関数が用意されており、外観や動作を柔軟にカスタマイズできます。

たとえば、アプリケーションの中でリストの内容をTextウィジェットに一覧表示したいケースを考えてみましょう。リストの各要素をTextウィジェットに挿入するには、forループでリストを順番に処理し、insert()メソッドを使って1件ずつ書き込んでいくのが基本の流れです。

実装例

# 必要なライブラリをインポート
from tkinter import *

# tkinterフレームのインスタンスを作成
win=Tk()

# ウィンドウサイズを設定
win.geometry("700x350")

# 表示する項目のリストを定義
days= ["Sun", "Mon", "Tue","Wed","Thu","Fri","Sat"]

text=Text(win, width=80, height=15)
text.pack()

# リストの各要素を順番に取り出して挿入
for day in days:
   text.insert(END, day + '\n')
   
win.mainloop()

実行結果

上記のコードを実行すると、Textウィジェット内に曜日の一覧が1行ずつリスト形式で表示されます。insert(END, ...)はウィジェットの末尾にテキストを追加する指定であり、改行文字'\n'を連結することで各項目が独立した行として出力される点がポイントです。

TkinterのTextウィジェットにリストを表示する方法

  1. 【Tkinter】テキストウィジェット(Text)から入力値を取得する方法

    PythonのTkinterでは、Textウィジェットを使って複数行のテキスト入力欄を簡単に作成できます。しかし、GUIアプリケーションを開発していると、ユーザーがテキストウィジェットに入力した内容をプログラム側で取得したい場面がよくあります。 テキストウィジェットからユーザーの入力を取得するには、.get()メソッドを使用します。このメソッドには取得する文字列の範囲を指定する必要があり、一般的にはテキストの先頭を示す 1.0 から末尾を示す end までを範囲として指定します。 コード例 # tkinterライブラリをインポート from tkinter import * # tkinte

  2. TkinterのEntryウィジェットにデフォルトテキストを設定する方法

    TkinterのEntryウィジェットは、ユーザーが入力した1行のテキストを表示・取得するための基本的なGUI部品です。ログインフォームやサインアップフォームなど、ユーザーとのやり取りが必要なさまざまなアプリケーションで広く利用されています。 Entryウィジェットにデフォルトテキスト(初期表示テキスト)を設定したい場合は、insert()メソッドを使用します。挿入位置とデフォルトとして表示したいテキストを引数として渡すだけで、簡単に実装できます。 実装例 以下の例では、デフォルトテキストが設定されたEntryウィジェットを作成しています。 # tkinterライブラリをインポート from