#!/usr/bin/python
# -*- coding: utf-8 -*-
# www.pythondiario.com
import sys
from Tkinter import *
def hacer_click():
try: #Intentara lo que sigue dentro del metodo o funcion try, a menos que se ingrese un valor incorrecto.
_valor = int(entrada_texto.get()) #Dentro de la variable se guardara lo que el objeto entrada_texto recibira del usuario.
_valor = _valor * 5 #El valor que se recibio del usuario se multiplica por 5.
etiqueta.config(text=_valor) #Se le asigna el resultado de la multiplicacion a una etiqueta para que se despliegue.
except ValueError: #Si se llega a detectar algun error en la entrada de texto(Que no sea un numero, o no se haya ingresado nada).
etiqueta.config(text="Introduce un numero!") #Se le asignara un mensaje para cuando ocurra un error.
app = Tk() #Se crea una ventana
app.title("Mi segunda App Grafica") #Se le coloca un titulo a la ventana.
# Ventana Principal
vp = Frame(app) #Crea un frame el cual estara dentro de la ventana app.
vp.grid(column=0, row=0, padx=(50, 50), pady=(10, 10)) #Se el dan especificaciones al frame.
vp.columnconfigure(0, weight=1) #Configuracion de las columnas.
vp.rowconfigure(0, weight=1) #Configuracion de las filas.
etiqueta = Label(vp, text="Valor") #Se declara una Etiqueta con el texto de "Valor".
etiqueta.grid(column=2, row=2, sticky=(W, E)) #Especifica la ubicacion de la etiqueta.
boton = Button(vp, text="OK!", command=hacer_click) #Se declara un boton el cual tendra de texto"OK!" y mandara a llamar a la funcion hacer_clicl().
boton.grid(column=1, row=1) #Se le especifica al boton su ubicacion.
valor = "" #Se declara una variable para el guardado del dato que ingresara el usuario.
entrada_texto = Entry(vp, width=10, textvariable=valor) #Se crea un objeto tipo Entry el cual estara dentro del Frame, con un ancho de 10, y lo que se ingrese, se guardara en la variable Valor.
entrada_texto.grid(column=2, row=1) #Se le especifica la ubicacion al objeto.
app.mainloop() #Se lanza la ventana.
Dentro de la sintaxis se dejaron notas explicando un poco el programa, sin embargo dare un analisis general del programa.
Analisis:
Primero que nada se declara la codificacion utf 8 para la utilizacion de caracteres especiales.
Se importa la libreria Tkinter.
Se empieza declarando un metodo llamado hacer_click() el cual utiliza algo nuevo para nosotros que es el Try, y except, intentara hacer una parte, pero entrara en el except si se introduce un valor erroneo.
Lo que hara el try es guardar el valor que el usuario ingrese dentro de una variable la cual se multiplicara por 5 y se desplegara en una etiqueta.
Si entra en el except ala etiqueta se le asignara un texto.
Abajo se declara una ventana tk() y se le da un titulo.
Despues se crea un frame el cual sera un contenedor principal para los demas objetos ademas se le especifica en donde estara con columnas y filas ademas de que se utiliza el padx y pady para añadir espacio extra al frame.
Se crea una etiqueta la cual dira "Valor" y se situara a un lado de la caja de texto.
Se crea un boton el cual dira "ok" y mandara a llamar la funcion hacer_click()
Se crea una variable la cual guardara el valor ingresado por el usuario.
se crea una caja de texto con la cual el usuario ingresara un valor y se guardara en la variable antes mencionada.
Al final se lanza la ventana app con un mainloop().
Corrida del programa:



No hay comentarios.:
Publicar un comentario