[pyar] Consulta Tkinter
Roberto Gomez
rgomez en autotrol.com.ar
Vie Mayo 9 09:59:44 ART 2014
patricio tula wrote:
> Hola,
> Estoy hace un tiempo usando este módulo para hacer una interfaz gráfica
> para un programa de control de prestamos de herramientas del laboratorio
> abierto (LABI) de la facultad de ingeniería de la UBA. La parte gráfica
> ya la tengo andando pero surge un error que no le encuentro explicación
> y solo puedo solucionarlo con fuerza bruta.
>
> El fragmento de código que falla es el siguiente:
> /
> def DevolucionesHerramientas():
> Devoluciones = Tk()
> Devoluciones.title("LABI-//Sistema de control de
> prestamos-Devoluciones")
> L=Label(Devoluciones,text="//Herramientas:").grid(row=0,//column=0)
> def Devolver():
> Devoluciones.destroy()
> Devolver = Tk()
> *Devolver.geometry("200x100")*
> Devolver.title("Cancelacion de prestamo")
> L1=Label(Devolver,text="Por:")//.pack()
> L2=Label(Devolver,text="//Herramientas devueltas:").pack()
> Devolver.mainloop()
> DevolverBoton=Button(//Devoluciones,text="DEVOLVER",
> command=Devolver).grid(row=2,//column=1)
> Devoluciones.mainloop()/
>
>
> El error que tira es el siguiente:
> /
> File "GUI.py", line 41
> Devolver.geometry("200x100")
> ^
> IndentationError: unexpected indent
> /
> La línea que falla es la que esta en negrita en el código. Lo que
> resulta extraño es que si le borro un TAB, o sea queda con 1 solo TAB,
> el error desaparece. En el resto del código aparece varías veces este
> error. Alguién tiene idea que puede ser? en que le estoy pifiando?
>
> Saludos,
> Pato
>
>
>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
>
Hola Patricio,
lo que me parece que está pasando es que dentro de la función Devolver
estás haciendo otra instancia de Tk() que también se llama Devolver, por
lo que creo que es un conflicto de nombres.
Tema aparte. No es común, por lo menos nunca lo ví, tener dos instancias
de Tk dentro de la misma aplicación, salvo que uses threads, cosa que
tampoco te puedo garantizar ya que tk usa algunas variables globales.
El tema es que mainloop() es bloqueante por lo que sólo se va a ejecutar
uno sólo de los loops.
Lo que normalmente se hace para estos casos es tener una sóla instancia
de tk con un único mainloop y usar Toplevel(s).
HTH
rober
More information about the pyar
mailing list