Está en la página 1de 18

Introducción a GUI

• CLI (Command Line Interface)


• GUI (Graphic User Interface)
• GUI vs CLI
• Componentes GUI
CLI (Command Line Interface)
CLI (Command Line Interface)
WordStar
GUI (Graphic User Interface)
GUI (Graphic User Interface)
Microsoft Word
GUI vs CLI
CLI GUI

• Escalabilidad/ • Menor trabajo mental


Configuración • Simplificar tareas
• Automatización • Visibilizar resultados
• Control Funciones • Facilidad de Uso
Sistema
• Menor Uso de
Memoria

https://tableplus.io/blog/2018/08/cli-vs-gui-which-one-is-better.html
GUI en Python

PyQt Kivy PySimpleGUI

WxPython
Tkinter

https://betterprogramming.pub/7-must-try-gui-libraries-in-python-34c8f6266363
Componentes GUI
Tk: Base de la interfaz, contenedor principal
Componentes GUI
Frame: Agrupa controles, contenedor secundario
Componentes GUI
Label: Texto estático o imagen
Componentes GUI
Entry: Texto corto (Caja de Texto)
Componentes GUI
Text: Texto largo (Caja de Texto)
Componentes GUI
Button: Botón de acción (Comando)
Diseñar una
calculadora
sencilla con
operaciones
básicas
Demo – Contenedor Base
import tkinter
from tkinter import *
#Definir ventana base
raiz = Tk()
#Definir titulo de la ventana
raiz.title("Calculadora 1.0")
#Define una dimensión para la ventana
raiz.geometry('250x100')
#Adicionar Controles
label1 = tkinter.Label(raiz, text="Hola Mundo!")
label1.pack()
#Hacer la ventana de dimensión fija
raiz.resizable(False, False)
#Ejecutar script tkinter
raiz.mainloop()
Demo - Controles
import tkinter #Etiqueta Numero 2
from tkinter import * label2 = tkinter.Label(raiz, text="Número 2:")
label2.grid(row = 1, column= 0)
#Caja de Texto 2
#Definir ventana base
entry2 = tkinter.Entry(raiz)
raiz = Tk() entry2.grid(row = 1, column= 1)
#Definir titulo de la ventana #Boton 1
raiz.title("Calculadora 1.0") button_add = tkinter.Button(raiz, text="Sumar")
#Define una dimensión para la ventana button_add.grid(row=2, column=0, columnspan=2)
raiz.geometry('250x100') #Hacer la ventana de dimensión fija
#Adicionar Controles raiz.resizable(False, False)
#Etiqueta Numero 1 #Ejecutar script Tkinter
label1 = tkinter.Label(raiz, text="Número 1:") raiz.mainloop()
label1.grid(row = 0, column= 0)
#Caja de Texto 1
entry1 = tkinter.Entry(raiz,)
entry1.grid(row = 0, column= 1)
import tkinter Demo – Comandos (01)
from tkinter import *
from tkinter import messagebox as mb
#Definir ventana base
raiz = Tk() #Función para el botón sumar
#Definir titulo de la ventana def button_add_clicked():
raiz.title("Calculadora 1.0") #Leer datos de las cajas
#Define una dimensión para la ventana numero01 = int(entry1.get())
raiz.geometry('250x100') numero02 = int(entry2.get())
#Adicionar Controles #Calcular la operación con los datos (suma)
#Etiqueta Numero 1 resultado = numero01 + numero02
label1 = tkinter.Label(raiz, text="Número 1:") #Desplegar el resultado de la suma
label1.grid(row = 0, column= 0) mb.showinfo("Resultado", "La suma es: "+str(resultado))
#Caja de Texto 1 #Boton 1
entry1 = tkinter.Entry(raiz,) button_add = tkinter.Button(raiz, text="Sumar", command=button_add_clicked)
entry1.grid(row = 0, column= 1) button_add.grid(row=2, column=0, columnspan=2)
#Etiqueta Numero 2 #Hacer la ventana de dimensión fija
label2 = tkinter.Label(raiz, text="Número 2:") raiz.resizable(False, False)
label2.grid(row = 1, column= 0) #Ejecutar script Tkinter
#Caja de Texto 2 raiz.mainloop()
entry2 = tkinter.Entry(raiz)
entry2.grid(row = 1, column= 1)
Taller de Diseño
Diseñar e implementar los siguientes programas en Python y
Tkinter:
1. Diseñar una calculadora sencilla para dos números reales
(suma, resta, producto y división).
2. Diseñar un convertidor de temperatura de grados centígrados
a grados Fahrenheit y viceversa.
3. Indicar el mayor valor de un vector de reales.
4. Indicar los elementos comunes entre dos vectores de enteros.
Recurso recomendado: https://www.pythontutorial.net/tkinter/

También podría gustarte