[Python3 + tkinter] Ayuda ventanas en cascada tkinter

Iniciado por darkweb64, 18 Noviembre 2015, 22:54 PM

0 Miembros y 1 Visitante están viendo este tema.

darkweb64

Necesito su ayuda, tengo tres ventanas construidas con tkinter, necesito que la ventana root siempre este encima de las demás y que no se pueda cambiar a la otra hasta que termine las operaciones en ella. Luego al cerrar la ventana root debe quedar abierta la ventana one y no poder cambiar a la ventana two hasta acabar las operaciones en ella y por ultimo permitirme usar la ventana one que es la única que tendrá botón cerrar.

OS Windows Python 3.4 tk 8.6 creo
Espero puedan ayudarme gracias.

from tkinter import *

root = Tk()
root.title('root')

one = Toplevel(root)
one.title('one')

two = Toplevel(root)
two.title('two')

root.mainloop()
one.mainloop()
two.mainloop()

tincopasan

¿es algún tipo de ejercicio? porque no entiendo la lógica, ¿no sería mejor crear la ventana x , realizar las operaciones y recién crear la ventana siguiente?

darkweb64

Enconte la respuesta a mi pregunta dejo un ejemplo y de dónde lo saque para alguien más

#!/usr/bin/env python
# https://es.wikibooks.org/wiki/Interfaz_gr%C3%A1fica_con_Tkinter/Gesti%C3%B3n_del_dise%C3%B1o/M%C3%A9todos

import tkinter

root = tkinter.Tk()
root.title("Ventana padre")
# Creamos una ventana hija de root
otra_ventana = tkinter.Toplevel(root)
otra_ventana.title("Ventana hija")
# Este es solo para decoracion
etiqueta = tkinter.Label(otra_ventana, text='Este es un ejemplo de transient')
etiqueta.pack()
# Posicionamos las dos ventanas para que sea mas claro el ejemplo
root.geometry("400x400+100+100")
otra_ventana.geometry("200x200+150+150")
# Y ahora si llamamos a este metodo
otra_ventana.transient(root)
root.mainloop()