Practica con tkColorChooser programa solo linea


El tkColoChooser nos permite elegir colores de la gama de colores, lo cual nos abre las siguiente ventana, en la cual se muestran la gama de colores.



# -*-# -*- coding: utf-8 -*-
from Tkinter import *
import tkColorChooser #libreria para obtener la gama de colores

#crecion de la ventana principal
v0 = Tk()
v0.title('Ventana principal')
v0.config(bg = 'brown') #bg para el color de fondo de la ventana
v0.geometry('500x500')#tamaño de la ventana
v0.iconbitmap("descarga.ico")#para cambiar el icono de la ventana


#funciones
def mostrar(num):
    #aparece la gamade colores RGB o en numero hexadecimal
    a=tkColorChooser.askcolor()
    #b=tkColorChooser.askcolor()
    #ventana secundaria
    v1 = Toplevel(v0)
    v1.title('ventana hija')
    v1.protocol('Wn_DELETE_WINDOW',"onexit")#para cerrar la ventana por medio de la cruz
    v1.geometry('300x300')#tamaño de la ventana
    v1.iconbitmap("vhija.ico")  # para cambiar el icono de la ventana
    #condiciones para los botones
    if num == 1:
        canvas1=Canvas(v1,width=200,height=200, bg='white')#(b[1])) esto es para seleccionar el color de fondo# OBJETO DE LA TKINTER   CANVAS(FIGURAS)     200 pixeles de ancho 200 ancho
        canvas1.pack(expand = YES, fill = BOTH)  #DESPLEGAR EL CANVAS, EXPAND QUE SEA EXPANDIBLE
        canvas1.create_line(100,200,200,100, width = 10, fill=(a[1]))#en fil añadimos (a[1]) para que se coloque el color seleccionado en el trazo
    elif num == 2:
        canvas2 = Canvas(v1, width=200, height=200,
                         bg='white')  # OBJETO DE LA TKINTER   CANVAS(FIGURAS)     200 pixeles de ancho 200 ancho
        canvas2.pack(expand=YES, fill=BOTH)  # DESPLEGAR EL CANVAS, EXPAND QUE SEA EXPANDIBLE
        canvas2.create_rectangle(10, 200, 200, 10, width=10, fill=(a[1]))

        # circulo
    elif num == 3:
        canvas3 = Canvas(v1, width=200, height=200,
                         bg='white')  # OBJETO DE LA TKINTER   CANVAS(FIGURAS)     200 pixeles de ancho 200 ancho
        canvas3.pack(expand=YES, fill=BOTH)  # DESPLEGAR EL CANVAS, EXPAND QUE SEA EXPANDIBLE
        canvas3.create_oval(10, 200, 200, 10, width=10, fill=(a[1]))
        # poligono

        elif num == 4:  #El polygono de Hugo
        canvas4 = Canvas(v1, width=200, height=200,
                         bg='white')  # OBJETO DE LA TKINTER   CANVAS(FIGURAS)     200 pixeles de ancho 200 ancho
        canvas4.pack(expand=YES, fill=BOTH)  # DESPLEGAR EL CANVAS, EXPAND QUE SEA EXPANDIBLE
        puntos = [102, 201, 233, 134, 431, 331, 122, 134]
        canvas4.create_polygon(puntos, width=10, fill=(a[1]))

    elif num == 5: #La estrella de zapata
        canvas5 = Canvas(v1, width=200, height=200,
                         bg='white')  # OBJETO DE LA TKINTER   CANVAS(FIGURAS)     200 pixeles de ancho 200 ancho
        canvas5.pack(expand=YES, fill=BOTH)  # DESPLEGAR EL CANVAS, EXPAND QUE SEA EXPANDIBLE
        puntos = [10,40,40,40,50,10,60,40,90,40,65,60,75,90,50,70,25,90,35,60]
        canvas5.create_polygon(puntos, width=10, fill=(a[1]))

def ocultar(ventana):ventana.destray()
def ejecutar(f):v0.after(200,f)



#botones
# V0 donde se va desplegar el boton
b1 = Button(v0, text='Abrir ventana con linea', command=lambda: ejecutar(mostrar(1)))
b1.grid(row=1, column=1)  # desplegar boton

b2=Button(v0,text='Abrir ventana cuadro',command=lambda:ejecutar(mostrar(2)))
b2.grid(row=1,column=2)  #desplegar boton

b3=Button(v0,text='Abrir ventana circulo',command=lambda:ejecutar(mostrar(3)))
b3.grid(row=1,column=3)  #desplegar boton

b4=Button(v0,text='Abrir ventana poligono',command=lambda:ejecutar(mostrar(4)))
b4.grid(row=1,column=4)  #desplegar boton

b5=Button(v0,text='Abrir ventana poligono',command=lambda:ejecutar(mostrar(5)))
b5.grid(row=1,column=5)  #desplegar boton

v0.mainloop()




El resultado de este cogigo es el siguiente:
Nos muestra la ventana con los botones para elegir la figura:


Segun sea la figura que hayamos seleccionado, en cualquier de los casos nos aparecerá la ventana de color, una vez seleccionado el color le damos en aceptar:

La siguiente imagen aparecen todas las figuras creadas, y los colores fueron seleccionados con el tkcolorchooser:

Comentarios

Entradas más populares de este blog

Ejercicios en PyCharm

1.1 Aplicaciones gráficas por computadora.

Ensayo de lenguaje ensamblador