Tkinter3000

Es un módulo para python utilizado para hacer interfaces gráficas basado en los objetos de tk. Puede ser bajado de la internet, para ello utilize un buscador y coloque la palabra "tkinter3000". Baje el archivo y ejecútelo. Se recomienda reiniciar la máquina. Se recomienda instalar primero el programa de desarrollo "geany". Geany que puede ser bajado de la internet. Luego se instala y finalmente se debe configurar la variable de entorno path del Windows.  

Al igual que todos los módulos se accesa a través de "import":
 import Tkinter
 

O bien:

 

from Tkinter import *

 
Programa básico para generación de una interfaz gráfica utilizando el módulo de TkInter:

 

# File: hello1.py 

from Tkinter import * # importación de las bibliotecas de tkinter3000

root = Tk() # generación del espacio donde se colocarán los objetos de tk
w = Label(root, text="Hello, world!") # creación de una instancia de la clase etiqueta
w.pack() # empaquetado de la etiqueta dentro de la instancia root

root.mainloop() # mantener a root a la espera de eventos

Interfaz gráfica Tk- generación de etiquetas

En este programa se genera un interfaz gráfica, basada en objeto de la clase Tk que ayudará al estudiante a comprender el uso de la sintáxis en la programación con clases.
#!/usr/local/bin/python
from Tkinter import *
import tkFont
class Application(Frame):

def __init__(self, master=None): # constructor

Frame.__init__(self, master) #generando un marco
self.grid() #empaquetando
self.createWidgets()# llamando a un metodo que crea una interfaz a partir del frame.

def createWidgets(self):

#generacion del contenido de la interfaz
self.quitButton = Button ( self, text="Quit", command=self.quit ) #Agregando un boton con
#evento
self.quitButton.grid() #empaquetar boton

#generando un tipo de letra para una etiqueta

helv36 = tkFont.Font ( family="Helvetica", size=36, weight="bold")

# nueva etiqueta 

self.etiqueta1 = Label(self,text="etiqueta1",font=helv36, fg="red")

#colocando la etiqueta en la grid 

self.etiqueta1.grid(row=1, column=0, columnspan=2, rowspan=2)

#generando otra etiqueta 

self.etiqueta2 = Label(self,text="etiqueta2")
self.etiqueta2.grid(row=0,column=1)
 

#**********inicio del main**********************
app = Application() # generando una instancia de la clase Application
app.master.title("Ejemplo de aplicacion") # definiendo titulo de la ventana principal
app.mainloop() # a la espera de eventos

 

Explicación:

from Tkinter import * 

 

class App:
def __init__(self, master):
# se genera una clase con el constructor (_init_) se utiliza como contenedor principal a master.

    frame = Frame(master)
    frame.pack()
    # se genera un frame para agregarlo a master
    self.button = Button(frame, text="QUIT", fg="red", command=frame.quit)
    self.button.pack(side=LEFT)
    self.hi_there = Button(frame, text="Hello", command=self.say_hi)
    self.hi_there.pack(side=LEFT)
    # se generan dos botones y se agregan a al widget padre (frame)
def say_hi(self):
      print "hola,hola!" 

      # se crea el método say_hi(self) del segundo botón.

#*********************** main***********************

root = Tk()

app = App(root)
root.mainloop()

 

 

Se genera el proceso de applicación y espera de eventos.

 

Otros ejemplos:

 

 

a) Generando una ventana con etiquetas.

 

fromTkinter import *  

 

root = Tk()  

 

w = Label(root, text="Red", bg="red", fg="white")  

 

w.pack(side=LEFT) 
 

w = Label(root, text="Green", bg="green", fg="black") 
 

w.pack(side=LEFT) 

 

w = Label(root, text="Blue", bg="blue", fg="white") 
 

w.pack(side=LEFT)

 

mainloop()

 
b) Para dibujar en el centro un rectángulo y í­neas que nace de los vértices de la ventana hacia los vértices del rectángulo dibujado relleno de color azul. Se anexa textos y administración de tiempo.
 

import time
from Tkinter import *
def pora():
    w.create_text(100,45,text="Dibu", fill="white", font=("Helvectica", "16"))
master = Tk()
master.title("Dibujando")
w = Canvas(master, width=200, height=200)
#helv36 = tkFont.Font ( family="Helvetica",    size=36, weight="bold") 
w.pack()
w.create_line(0, 0, 200, 100)
w.create_line(0, 100, 200, 0, fill="red", dash=(4, 4))
w.create_rectangle(50, 25, 150, 75, fill="blue")
w.create_text(100,45,text="", fill="white", font=("Helvectica", "16"))
tel=w.create_text(100,140,text="www.lomasdeterciopelo.co.cr",fill="brown", font=("Helvectica", "10", "bold italic") )
master.after(5000,pora)
mainloop() 

 
 

c)Utilización del grid para colocar objetos.
 

from Tkinter import *
root = Tk()
w = Label(root, text="Additive:")

w.grid(sticky=E)

w = Label(root, text="Subtractive:")

w.grid(sticky=E)

w = Label(root, text="Cyan", bg="cyan", height=2)
w.grid(row=1, column=1)

w = Label(root, text="Magenta", bg="magenta", fg="white")
w.grid(row=1, column=2)

w = Label(root, text="Yellow", bg="yellow", height=2)
w.grid(row=1, column=3)

w = Label(root, text="Red", bg="red", fg="white", height=2)
w.grid(row=0, column=1)

w = Label(root, text="Green", bg="green", height=3)
w.grid(row=0, column=2)

w = Label(root, text="Blue", bg="blue", fg="white")
w.grid(row=0, column=3)

mainloop()

 

Powered by Drupal - Design by artinet