es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

En tkinter, ¿cómo puedo acceder al texto en un cuadro de texto como una variable?

Lo que estoy tratando de lograr es poder hacer clic en un botón y obtener el texto que el usuario ha escrito en una variable.

Ya tengo un botón y el cuadro de texto.

from tkinter import *

def Enter_button():
    print()

ws = Tk()
ws.title('quick look up')
ws.geometry('300x300')
ws.config(bg='#ffffff')

mensaje = 'Datos aquí:'

text_box = Text(
    ws,
    height=13,
    width=40
)
text_box.pack(expand=True)
text_box.insert('end', mensaje)

Button(
    ws,
    text='Enviar',
    width=15,
    height=2,
    command=Enter_button
).pack(expand=True)

ws.mainloop()

Note: The translation above assumes that the code and output are meant to be translated as well.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para lograr el resultado deseado, la función Enter_button() debe recuperar el texto del widget de texto y almacenarlo en una variable. Esto se puede hacer utilizando el método get() del widget de texto.

    Primero, se debe definir una variable para almacenar el texto ingresado por el usuario, por ejemplo:

    user_text = ''
    

    Luego, dentro de la función Enter_button(), se puede llamar al método get() en el widget de texto para recuperar el texto y asignarlo a la variable user_text:

    def Enter_button():
        global user_text
        user_text = text_box.get('1.0', 'end-1c')
        print(user_text)
    

    En este ejemplo, se llama al método get() con los argumentos '1.0' y 'end-1c', que especifican el rango de texto a recuperar. '1.0' significa el primer carácter de la primera línea, y 'end-1c' significa el último caracteres menos uno, lo que garantiza que se excluya cualquier carácter de nueva línea al final.

    La palabra clave global se utiliza para indicar que la variable user_text que se está asignando es la variable global definida anteriormente, en lugar de una nueva variable local con el mismo nombre.

    Una vez que la variable user_text ha sido asignada con el texto ingresado por el usuario, se puede acceder y utilizar según sea necesario en todo el programa.

Comments are closed.