lunes, 8 de octubre de 2018

Menu de poligonos

Ventana de poligonos

from Tkinter import *
def ocultar(ventana):ventana.destroy()

def ejecutar(f): v0.after(200, f)


def espada():
    v1 = Toplevel(v0)
    v1.title("Ventana hija")
    v1.protocol("WM_DELETE_WINDOW", "onexit")
    v1.config(bg="black")
    v1.geometry("500x500")

    figuras = Canvas(v1, width=500, bg='black')
    figuras.pack(expand=YES, fill=BOTH)
    figuras.create_polygon(150,75,200,25,200,250,250,250,250,275,225,275,
                           225,300,200,300,200,375,150,375,150,300,125,300,
                           125,275,100,275,100,250,150,250,150,75
,width=9, fill="blue", outline="orange")
    b6 = Button(figuras, text="Cerrar figura de Angel Torres", 
                command=lambda: v1.destroy())

    b6.pack()
    v1.deiconify()

def pino():
        v1 = Toplevel(v0)
        v1.title("Ventana hija")
        v1.protocol("WM_DELETE_WINDOW", "onexit")
        v1.config(bg="black")
        v1.geometry("500x500")

        canvas = Canvas(v1, width=390, height=350, bg='black')
        canvas.pack(expand=YES, fill=BOTH)

        canvas.create_polygon(120, 20, 100, 40, 110, 40, 90, 50, 100, 50, 80, 60,
                              110,60, 110, 90, 130, 90, 130, 60, 160, 60, 140, 50,
                              150, 50, 130, 40, 140, 40, 120, 20, 
                              width=3,fill='green', outline='black')
        b3 = Button(canvas, text="ocultar poligono de Diego Losoya", 
                    command=lambda: ejecutar(ocultar(v1)))
        b3.grid(row=1, column=3)
        v1.deiconify()


def diamante():
        v1 = Toplevel(v0)
        v1.title("Ventana hija")
        v1.protocol("WM_DELETE_WINDOW", "onexit")
        v1.config(bg="black")
        v1.geometry("500x500")
        canvas = Canvas(v1, width=300, height=200, bg='orange')
        canvas.pack(expand=YES, fill=BOTH)
        canvas.create_polygon(100,50,250,50,300,100,175,225,50,100,100,50, 
                              width = 3, fill = 'yellow', outline = 'black')
        b3 = Button(canvas, text="ocultar figura de Pedro Maldonado", 
                    command=lambda: ejecutar(ocultar(v1)))
        b3.grid(row=1, column=3)
        v1.deiconify()



v0=Tk()
menu1 = Menu(v0)
v0.config(menu=menu1)
menu1_1 = Menu(menu1, tearoff=0)
menu1.add_cascade(label="Poligonos", menu=menu1_1)
menu1_1_1 = Menu(menu1_1, tearoff=0)
menu1_1.add_cascade(label="Poligonos sencillos", menu=menu1_1_1)
menu1_1_1.add_command(label="Pino",command=lambda: pino())
menu1_1_1.add_command(label="Diamante",command=lambda: diamante())

menu1_2 = Menu(menu1, tearoff=0)
menu1.add_cascade(label="Mas Poligonos", menu=menu1_2)
menu1_2.add_command(label="Espada",command=lambda: espada())

v0.mainloop()





Con botones
from Tkinter import *
v0 = Tk()
v0.title("Ventana madre")
v0.config(bg="blue")
v0.geometry("600x200")
def mostrar(num):
    v1 = Toplevel(v0)
    v1.title("Ventana hija")
    v1.protocol("WM_DELETE_WINDOW", "onexit")
    v1.config(bg="black")
    v1.geometry("400x400")
    if  num==1:
     hola = Canvas(v1, width=300, height=210, bg='white')
     hola.pack(expand=YES, fill=BOTH)
     hola.create_polygon(120,20,100,40,110,40,90,50,100,50,80,60,110,60,110,90,
                         130,90,130,60,160,60,140,50,150,50,130,40,140,40,120,20,
                         width = 3,fill = 'green', outline = 'black')
     b3 = Button(hola, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
    elif num == 2:
     canvas = Canvas(v1,width=300, height=210, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_polygon(100,50,250,50,300,100,175,225,50,100,100,50,
                           width = 3, fill = 'yellow', outline = 'black')
     b3 = Button(canvas, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
    elif num == 3:
        canvas = Canvas(v1, width=600, height=600, bg='white')
        canvas.pack(expand=YES, fill=BOTH)
        canvas.create_polygon(150,75,200,25,200,250,250,250,250,275,225,275,225,300,
                              200,300, 200,375,150,375,150,300,125,300, 125,275,100,
                              275,100,250,150,250,150,75,
                              width=9, fill="blue", outline="orange")
        b3 = Button(canvas, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
        b3.grid(row=1, column=3)

def ocultar(ventana):ventana.destroy()
def ejecutar(f): v0.after(200, f)
b1 = Button(v0, text="Abrir ventana con Figura de Losoya", command=lambda:
ejecutar(mostrar(1)) )
b1.grid(row=1, column=1)
b3 = Button(v0, text="Abrir ventana con Figura de Pedro", command=lambda:
ejecutar(mostrar(2)))
b3.grid(row=1, column=2)
b4 = Button(v0, text="Abrir ventana con Figura de Torres", command=lambda:
ejecutar(mostrar(3)))
b4.grid(row=1, column=3)


v0.mainloop()

No hay comentarios:

Publicar un comentario