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

Tkinterで1つのバインドで複数のイベントをバインドするにはどうすればよいですか?


特定のアプリケーションで、定義されたボタンを使用して複数のタスクを実行する場合は、 bind(Button、callback)を使用できます。 ボタンとイベントをバインドして、アプリケーションでのイベントの実行をスケジュールするメソッド。

複数のイベントまたはコールバックを単一のでバインドするとします。 、次に、最初にすべてのウィジェットを反復処理して、ウィジェットを1つのエンティティとして取得する必要があります。エンティティは、アプリケーション内の複数のウィジェットをバインドするように構成できるようになりました。

# Import the required libraries
from tkinter import *
from tkinter import ttk

# Create an instance of tkinter frame or window
win = Tk()

# Set the size of the window
win.geometry("700x350")

def change_bgcolor(e):
   label.config(background="#adad12")

def change_fgcolor(e):
   label.config(foreground="white")

# Add a Label widget
label = Label(win, text="Hello World! Welcome to Tutorialspoint", font=('Georgia 19 italic'))
label.pack(pady=30)

# Add Buttons to trigger the event
b1 = ttk.Button(win, text="Button-1")
b1.pack()

# Bind the events
for b in [b1]:
   b.bind("<Enter>", change_bgcolor)
   b.bind("<Leave>", change_fgcolor)

win.mainloop()

出力

上記のコードを実行すると、ボタンを含むウィンドウが表示されます。

Tkinterで1つのバインドで複数のイベントをバインドするにはどうすればよいですか?

ボタンにカーソルを合わせると、ラベルの背景色が変わります。ボタンを離すと、ラベルウィジェットのフォントの色が変わります。

Tkinterで1つのバインドで複数のイベントをバインドするにはどうすればよいですか?


  1. Tkinterラベルのテキストを取得するにはどうすればよいですか?

    Tkinterラベルは、ウィンドウにテキストまたは画像を作成して表示するために使用されます。フォントファミリー、パディング、幅、高さなどのラベル情報をカスタマイズするために使用できるいくつかのコンポーネントと関数があります。ウィンドウにラベルテキストを表示するために、必要なテキストの値を書き込むことができます。ウィンドウに表示されます。 例 #Import the required library from tkinter import * #Create an instance of tkinter frame win= Tk() #Define the geometry of the

  2. Tkinterウィジェットを非表示にするにはどうすればよいですか?

    tkinterウィジェットを非表示にするには、 pack_forget()を使用できます。 方法。通常、ウィンドウからウィジェットのマップを解除するために使用されます。 例 次の例では、ラベルテキストと、ラベルテキストウィジェットで非表示のイベントをトリガーするために使用できるボタンを作成します。 #Import the required libraries from tkinter import * #Create an instance of tkinter frame win= Tk() #Set the geometry of frame win.geometry("6