Python tkinterのScrolledTextモジュールの使い方と実装方法を解説
Tkinterアプリケーションでは、ウィジェットに拡張機能やプロパティを追加することで、簡単にカスタマイズできます。Textウィジェットは、ユーザーから複数行のテキスト入力を受け付けるための部品です。このTextウィジェットにスクロールバーを組み合わせることで、ウィジェット内のテキストをスクロール可能にできます。
Tkinterライブラリには、ScrolledTextウィジェットが標準で用意されています。これは、TextウィジェットとScrollbarウィジェットを組み合わせたもので、アプリケーション内でテキストをスクロール表示する機能を手軽に実現できます。ScrolledTextウィジェットを使用するには、事前にモジュールをインポートする必要があります。
scrolledtextウィジェットは、標準のTextウィジェットとほぼ同じように動作し、Textウィジェットで利用できるすべてのプロパティや属性をそのまま使用できるのが特徴です。
コード例
# tkinterライブラリをインポート
from tkinter import *
from tkinter.scrolledtext import ScrolledText
from lorem_text import lorem
# tkinterフレームのインスタンスを作成
win= Tk()
# ウィンドウサイズを設定
win.geometry("700x350")
# ウィンドウタイトルを設定
win.title("Scrolled Text")
# ScrolledTextウィジェットを追加
size= 10
text= ScrolledText(win, width=40, height= 50)
text.insert(END, lorem.paragraphs(10))
text.pack(fill= BOTH, side= LEFT, expand= True)
win.mainloop()実行結果
上記のコードを実行すると、複数行のテキストを表示できるTextウィジェットが画面に表示されます。ウィジェット内のテキストはスクロール可能になっており、マウスホイールやスクロールバーを使って自由に閲覧できます。
さらに、折り返し(wrap)機能を追加することで、長い文章を見やすく表示でき、より快適な操作性を実現できます。
-
Tkinterでラベルのテキストを取得する方法を解説
TkinterのLabel(ラベル)ウィジェットは、ウィンドウ上にテキストや画像を表示するために使用される基本的なコンポーネントです。フォントファミリーやパディング、幅・高さなどのオプションを指定することで、ラベルの見た目を自由にカスタマイズできます。ラベルに設定したテキストを取得したい場合は、ラベルウィジェットに対して [text] を指定するだけで、簡単にその値へアクセスできます。以下に具体的なサンプルコードを示します。サンプルコード# 必要なライブラリをインポート from tkinter import * # tkinterフレームのインスタンスを作成 win = Tk() # ウ
-
Tkinterでテキストウィジェットを読み取り専用(無効化)にする方法
Tkinterでは、テキストウィジェットを無効化(disabled)したいケースがあります。これを実現するには、テキストウィジェットの state オプションを DISABLED に設定します。こうすることでテキストウィジェットがフリーズし、読み取り専用の状態になります。この記事では、テキストウィジェットとボタンを作成し、ボタンをクリックするとテキストウィジェットを即座に無効化できるサンプルを紹介します。コード例# ライブラリのインポート from tkinter import * # ウィンドウのインスタンスを作成 win = Tk() # ウィンドウのサイズを設定 win.geomet