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

【Python】ボタンクリックでTkinterラベルのテキストを動的に変更する方法

TkinterのLabelウィジェットは、アプリケーション内でテキストや画像を表示するために最もよく使われるウィジェットの一つです。ラベルのテキストプロパティや文字色、背景色・前景色などは、config(**options)メソッドを使って自由に設定できます。

また、実行中にラベルの内容を動的に変更したい場合は、ボタンと関数を組み合わせることで、クリック操作に応じてラベルのテキストを更新することが可能です。

サンプルコード

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

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

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

# ラベルのテキストを更新する関数を定義
def on_click():
    label["text"] = "Python"
    b["state"] = "disabled"

# ラベルウィジェットを作成
label = Label(win, text="ボタンを押すとこのテキストが更新されます",
font=('Calibri 15 bold'))
label.pack(pady=20)

# ラベルを更新するためのボタンを作成
b = Button(win, text="ラベルを更新", command=on_click)
b.pack(pady=20)

win.mainloop()

実行結果

上記のコードを実行すると、ウィンドウ内にラベルのテキストとボタンが表示されます。

【Python】ボタンクリックでTkinterラベルのテキストを動的に変更する方法

ボタンをクリックすると、ラベルのテキストが「Python」に更新されます。同時に、on_click関数内でボタンのstateを「disabled」に設定しているため、ボタンは無効化され、再度押せないようになります。

【Python】ボタンクリックでTkinterラベルのテキストを動的に変更する方法

ポイント解説

この例のように、label["text"] = "新しいテキスト"という辞書形式の代入でもラベルのテキストを変更できますが、label.config(text="新しいテキスト")メソッドを使えば、複数のオプション(テキスト・色・フォントなど)を一度にまとめて設定することもできます。状況に応じて使い分けると、より柔軟なUIを実装できるでしょう。

  1. Tkinterで画像をボタンとして使う方法をわかりやすく解説

    Tkinterでは、画像ファイルをそのままボタンとして表示することができます。この記事では、角丸の画像ボタンを作成する方法を、実際のコード例とともに解説します。ここで紹介する手法は、フォーム、ゲーム、ダイアログボックスなど、さまざまなアプリケーションに応用できる汎用的なテクニックです。 画像ボタンの作り方の基本 Tkinterで見栄えの良い角丸ボタンを作る最も簡単な方法は、あらかじめ用意したボタン用の画像を、クリック可能なウィジェットとして配置することです。これを実現するのがPhotoImage()関数で、指定した画像ファイルを読み込んでボタンに渡すことができます。 具体的には、以下の手順で画

  2. Tkinterでボタンのテキストサイズをウィンドウに合わせて動的に変更する方法

    Tkinterのフレーム内にボタンを作成した際、ボタンのテキストをメインウィンドウのサイズに合わせて動的に拡大・縮小させたいケースはよくあります。ボタン自体はButtonウィジェットを使えば簡単に作成できますが、テキストサイズを動的に変化させるには、いくつかの機能を組み合わせる必要があります。この記事では、テキスト付きのボタンを作成し、Gridメソッドのrowconfigure()とcolumnconfigure()を使って、メインウィンドウ(ルートウィンドウ)のリサイズに追従できるようにする方法を解説します。bind(<Configure>)でイベントを結び付けるボタンのテキスト