[Python-es] Problemas con tkinter
Javier Perez
javierperez en perasalvino.es
Jue Nov 19 05:18:38 EST 2020
Vale, creo que ya lo tengo:
Creo la variable result como global.
Muchísimas gracias Miguel, te debo una caña :-)
def foo(root, texto):
#print('con este texto "{}" hago lo que quiero'.format(texto))
root.quit()
root.destroy()
root = tk.Tk()
root.geometry("600x400")
def getTextInput():
global result
result = textExample.get("1.0", tk.END+"-1c")
foo(root, result)
textExample = tk.Text(root, height=10)
textExample.pack()
btnRead = tk.Button(root, height=2, width=50, text="Introducir en la bbdd", command=getTextInput)
btnRead.pack()
root.mainloop()
print('mi programa sigue por aquí')
print(result)
Saludos,
--
Javier Pérez
http://es.linkedin.com/in/javierperez1
http://www.perasalvino.es/
> El 19 nov 2020, a las 9:09, Javier Perez <javierperez en perasalvino.es> escribió:
>
> Muchas gracias Miguel,
>
> Si y no.
>
> O sea esta perfecta pero sigo con el mismo problema:
>
> Después de:
>> print('mi programa sigue por aquí')
>
> quiero usar el texto del cuadro de dialogo para modificarlo.
>
>
> un print(texto) no funciona.
>
>
> Saludos,
>
> --
> Javier Pérez
> http://es.linkedin.com/in/javierperez1 <http://es.linkedin.com/in/javierperez1>
> http://www.perasalvino.es/ <http://www.perasalvino.es/>
>
>
>
>
>> El 18 nov 2020, a las 19:12, Miguel Sanchez <msanchez en uninet.edu <mailto:msanchez en uninet.edu>> escribió:
>>
>>
>>
>>
>> Es esto lo que pretendes hacer?
>>
>>
>> import tkinter as tk
>>
>> def foo(root, texto):
>> print('con este texto "{}" hago lo que quiero'.format(texto))
>> root.quit()
>> root.destroy()
>>
>> root = tk.Tk()
>> root.geometry("600x400")
>>
>> def getTextInput():
>> result = textExample.get("1.0", "end")
>> foo(root, result)
>>
>> textExample = tk.Text(root, height=10)
>> textExample.pack()
>> btnRead = tk.Button(root, height=2, width=50, text="Introducir en la bbdd", command=getTextInput)
>> btnRead.pack()
>> root.mainloop()
>>
>> print('mi programa sigue por aquí')
>>
>>
>>
>> Saludos
>>
>>
>>
>>>
>>>
>>>
>>>
>>> Saludos,
>>>
>>> --
>>> Javier Pérez
>>> http://es.linkedin.com/in/javierperez1 <http://es.linkedin.com/in/javierperez1>
>>> http://www.perasalvino.es/
>>>
>>>
>>>
>>>
>>>> El 17 nov 2020, a las 18:19, Miguel Sanchez <msanchez en uninet.edu> escribió:
>>>>
>>>> Hola:
>>>>
>>>>
>>>> No veo claro lo que pretendes
>>>>
>>>> noticia = getTextInput()
>>>> print(noticia)
>>>>
>>>> Están fuera del bucle por lo que se ejecutarán cuando ya no exista textExample con lo que debería dar error
>>>> y por otro lado quién esperas que reciba el return de getTextInput()??
>>>>
>>>>
>>>> Saludos
>>>>
>>>>
>>>> El Tue, 17 Nov 2020 12:27:16 +0100
>>>> Javier Perez <javierperez en perasalvino.es> dijo:
>>>>
>>>>> Hola a todos,
>>>>>
>>>>>
>>>>> Estoy empezando a usar tkinter. Tengo dos problemas:
>>>>> 1) no se como sacar la información del formulario. El caso es que tengo una funcion que si lo recoge pero no lo retorna. No llego a entender lo que pasa.
>>>>>
>>>>> 2) Después, al cerrar la venta, me muestra este error la consola:
>>>>> result = textExample.get("1.0", "end")
>>>>> File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/tkinter/__init__.py", line 3706, in get
>>>>> return self.tk.call(self._w, 'get', index1, index2)
>>>>> _tkinter.TclError: invalid command name ".!text"
>>>>>
>>>>>
>>>>>
>>>>> El código es este:
>>>>> import tkinter as tk
>>>>>
>>>>> root = tk.Tk()
>>>>> root.geometry("600x400")
>>>>>
>>>>>
>>>>> def getTextInput():
>>>>> result = textExample.get("1.0", "end")
>>>>> #print(result) # —> si le queto el comentario si me lo imprime
>>>>> return result
>>>>>
>>>>> textExample = tk.Text(root, height=10)
>>>>> textExample.pack()
>>>>> btnRead = tk.Button(root, height=2, width=50, text="Introducir en la bbdd", command=getTextInput)
>>>>>
>>>>> btnRead.pack()
>>>>>
>>>>> root.mainloop()
>>>>>
>>>>> noticia = getTextInput()
>>>>> print(noticia)
>>>>>
>>>>>
>>>>> Muchísimas gracias a todos,
>>>>>
>>>>> Saludos,
>>>>>
>>>>> --
>>>>> Javier Pérez
>>>>> http://es.linkedin.com/in/javierperez1
>>>>> http://www.perasalvino.es/
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Python-es mailing list
>>>>> Python-es en python.org
>>>>> https://mail.python.org/mailman/listinfo/python-es
>>>> _______________________________________________
>>>> Python-es mailing list
>>>> Python-es en python.org
>>>> https://mail.python.org/mailman/listinfo/python-es
>>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org <mailto:Python-es en python.org>
>> https://mail.python.org/mailman/listinfo/python-es <https://mail.python.org/mailman/listinfo/python-es>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org <mailto:Python-es en python.org>
> https://mail.python.org/mailman/listinfo/python-es <https://mail.python.org/mailman/listinfo/python-es>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://mail.python.org/pipermail/python-es/attachments/20201119/d597e113/attachment.html>
Más información sobre la lista de distribución Python-es