¿Cómo verificar en qué botón se hizo clic en Tkinter?

¿Está utilizando varios botones en su aplicación y está confundido acerca de qué botón se está presionando? ¡¡No sé cómo deshacerme de esta solución!! No te preocupes, solo lee el artículo. En este artículo, explicaremos en detalle el procedimiento para saber qué botón se presionó.

Enfoque paso a paso:

Paso 1: Primero, importa la biblioteca Tkinter.

from tkinter import *

Paso 2: Ahora, crea una aplicación GUI usando Tkinter.

app = Tk()

Paso 3: luego, cree una función con un parámetro, es decir, del texto que desea mostrar cuando se hace clic en un botón

def which_button(button_press):
   print (button_press)

Paso 4: Además, cree y muestre el primer botón llamando a la función which_button que declaró en el paso 3.

b1 = Button(app, text="#Text you want to show in button b1",
            command=lambda m="#Text you want to show when\
            b1 is clicked": which_button(m))
            
b1.grid(padx=10, pady=10)

Paso 5: Además, crea y muestra el segundo botón llamando a la función which_button que declaraste en el paso 3.

b2 = Button(app, text="#Text you want to show in button b2",
            command=lambda m="#Text you want to show when \
            b2 is clicked": which_button(m))
            
b2.grid(padx=10, pady=10)

Paso 6: A continuación, siga repitiendo los pasos 4 y 5 para n cantidad de botones reemplazando n con la cantidad de botones que desea que se muestren en la aplicación. No olvide llamar a la función which_button que declaró en el paso 3.

bn = Button(app, text="#Text you want to show in button bn",
            command=lambda m="#Text you want to show when \
            bn is clicked": which_button(m))
            
bn.grid(padx=10, pady=10)

Paso 7: Finalmente, cree un bucle infinito para mostrar la aplicación en la pantalla.

app.mainloop()

Ejemplo: 

En este ejemplo, si el texto ‘ Es una manzana ‘ se imprime en la pantalla, sabemos que se presiona el botón ‘ Apple ‘, de lo contrario, cuando se imprime ‘ Es una banana ‘ en la pantalla, sabemos ‘ Plátano ‘ Se presiona el botón ‘.

Python

# Python program to determine which
# button was pressed in tkinter
 
# Import the library tkinter
from tkinter import *
 
# Create a GUI app
app = Tk()
 
# Create a function with one parameter, i.e., of
# the text you want to show when button is clicked
def which_button(button_press):
    # Printing the text when a button is clicked
    print(button_press)
 
 
# Creating and displaying of button b1
b1 = Button(app, text="Apple",
            command=lambda m="It is an apple": which_button(m))
 
b1.grid(padx=10, pady=10)
 
# Creating and displaying of button b2
b2 = Button(app, text="Banana",
            command=lambda m="It is a banana": which_button(m))
b2.grid(padx=10, pady=10)
 
# Make the infinite loop for displaying the app
app.mainloop()

Producción:

Publicación traducida automáticamente

Artículo escrito por vin8rai y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *