1. Programa que pide datos básicos de una persona.
from Tkinter import *
root = Tk()
root.geometry('250x150')
root.title('formulario 1')
nombre_label = Label(root,text="Nombre :")
nombre_label.grid(row=1,column=1)
nombre_str = StringVar()
nombre_entry = Entry(root,textvariable=nombre_str)
nombre_entry.grid(row=1,column=2)
last_label= Label(root,text="Apellido : ")
last_label.grid(row=2,column=1)
last_str = StringVar()
last_entry = Entry(root,textvariable=last_str)
last_entry.grid(row=2,column=2)
mail_label = Label(root,text="Email : ")
mail_label.grid(row=3,column=1)
mail_str = StringVar()
mail_entry = Entry(root,textvariable=mail_str)
mail_entry.grid(row=3,column=2)
endfinish = Button(root,text="finalizar",relief=FLAT)
endfinish.grid(row=4,column=2)
root.mainloop()
2. Programa que calcula el IMC de una persona.
import sys
import Tkinter
from Tkinter import *
import tkMessageBox
def imc():
num1 = int(entrada_peso.get())
num2 = float(entrada_altura.get())
imc = (num1 / (num2 * num2))
if imc == 0 or imc < 18:
tkMessageBox.showinfo("Resultado", "Peso bajo. Necesario valorar signos de desnutricion")
elif imc == 18 or imc < 25:
tkMessageBox.showinfo("Resultado", "Usted tiene un peso normal")
elif imc == 25 or imc < 27:
tkMessageBox.showinfo("Resultado", "Usted padece sobrepeso")
elif imc == 27 or imc < 30:
tkMessageBox.showinfo("Resultado", "Usted padece obesidad grado I")
elif imc == 30 or imc < 40:
tkMessageBox.showinfo("Resultado", "Usted padece de obesidad grado II")
else:
tkMessageBox.showinfo("Resultado", "Usted padece de obesidad morbida")
ventana = Tk()
ventana.title("Calculo de IMC")
ventana.geometry("400x200")
ventana.config(bg="rosybrown")
vp = Frame(ventana)
vp.grid(column=0, row=0, padx=(50, 50),
pady=(10, 10)) # para posicionar cualquier objetovp.columnconfigure(0, weight=1)
vp.rowconfigure(0, weight=1)
peso = IntVar()
altura = float()
etiqueta_peso = Label(ventana, text='Peso(kg):', bg='ivory')
etiqueta_peso.grid(row=1, column=1, padx=(10, 10), pady=(10, 10), sticky=E)
entrada_peso = Entry(ventana, textvariable=peso)
entrada_peso.grid(row=1, column=2, padx=(10, 10), pady=(10, 10), sticky=E)
etiqueta_altura = Label(ventana, text='Altura(mts): ', bg='ivory')
etiqueta_altura.grid(row=2, column=1, padx=(10, 10), pady=(10, 10), sticky=E)
entrada_altura = Entry(ventana, textvariable=altura)
entrada_altura.grid(row=2, column=2, padx=(10, 10), pady=(10, 10), sticky=E)
bconv = Button(ventana, bg='plum', fg='white', text='Calcular IMC', width=10, height=1, command=imc)
bconv.grid(row=4, column=2, padx=(10, 10), pady=(10, 10))
ventana.mainloop()
3. Programa que dice el signo zodiacal de una persona.
import sys
import Tkinter as tk
from Tkinter import *
import tkMessageBox
ventana = Tk()
ventana.title("Signo Zodiacal")
ventana.geometry("400x200")
ventana.config(bg="rosybrown")
vp = Frame(ventana)
vp.grid(column=0, row=0, padx=(50, 50),
pady=(10, 10)) # para posicionar cualquier objetovp.columnconfigure(0, weight=1)
vp.rowconfigure(0, weight=1)
var = StringVar(ventana)
ver = StringVar(ventana)
var.set("Enero") # initial valuever = StringVar(ventana)
var.set("1") # initial value
etiqueta_mes = Label(ventana, text='Mes de nacimiento: ')
ent_mes = OptionMenu(ventana, var, "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto",
"Septiembre", "Octubre", "Noviembre", "Diciembre", )
etiqueta_mes.grid(row=1, column=1, padx=(10, 10), pady=(10, 10), sticky=E)
ent_mes.grid(row=1, column=3)
etiqueta_dia = Label(ventana, text='Dia de nacimiento: ')
ent_dia = OptionMenu(ventana, ver, "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15",
"16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31")
etiqueta_dia.grid(row=4, column=1, padx=(10, 10), pady=(10, 10), sticky=E)
ent_dia.grid(row=4, column=3)
def signo():
month = str(var.get())
day = int(ver.get())
if month == "Marzo" and day >= 21 or month == "Abril" and day <= 20:
tkMessageBox.showinfo("Signo", "Eres Aries")
elif month == "Abril" and day >= 21 or month == "Mayo" and day <= 21:
tkMessageBox.showinfo("Signo", "Eres Tauro")
elif month == "Mayo" and day >= 22 or month == "Junio" and day <= 21:
tkMessageBox.showinfo("Signo", "Eres Gemenis")
elif month == "Junio" and day >= 22 or month == "Julio" and day <= 22:
tkMessageBox.showinfo("Signo", "Eres Cancer")
if month == "Julio" and day >= 23 or month == "Agosto" and day <= 23:
tkMessageBox.showinfo("Signo", "Eres Leo")
if month == "Agosto" and day >= 24 or month == "Septiembre" and day <= 23:
tkMessageBox.showinfo("Signo", "Eres Virgo")
if month == "Septiembre" and day >= 24 or month == "Octubre" and day <= 23:
tkMessageBox.showinfo("Signo", "Eres Libra")
if month == "Octubre" and day >= 24 or month == "Noviembre" and day <= 22:
tkMessageBox.showinfo("Signo", "Eres Escorpion")
if month == "Noviembre" and day >= 23 or month == "Diciembre" and day <= 21:
tkMessageBox.showinfo("Signo", "Eres Sagitario")
if month == "Diciembre" and day >= 22 or month == "Enero" and day <= 20:
tkMessageBox.showinfo("Signo", "Eres Capricornio")
if month == "Enero" and day >= 21 or month == "Febrero" and day <= 18:
tkMessageBox.showinfo("Signo", "Eres Acuario")
if month == "Febrero" and day >= 19 or month == "Marzo" and day <= 20:
tkMessageBox.showinfo("Signo", "Eres Piscis")
boton = Button(ventana, text='Signo', command=signo, width=20)
boton.grid(row=5, column=1, padx=(10, 10), pady=(10, 10), sticky=E)
ventana.mainloop()
4. Programa que cuenta billetes y monedas.