Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- usr/bin/env python
- # -*- coding: utf-8 -*-
- #
- # Necesito una biblioteca para programar gráficamente: tkinter
- # tkinter es un derivado de TCL/Tk (biblioteca TK del lenguaje TCL)
- # reescrito para Python
- import tkinter as tk
- def borrarPantalla():
- import os
- if os.name == "posix":
- os.system ("clear")
- else:
- os.system ("cls")
- def guardar_datos():
- # importo una libreria para imprimir 'estructuras complicadas''
- # de listas y diccionarios
- import pprint
- # le doy permiso a la función para que acceda a la
- # lista 'personas'
- global personas
- # borro la pantalla
- borrarPantalla()
- # leo los datos del formulario
- nombre = caja_nombre.get()
- email = caja_email.get()
- tel = caja_tel.get()
- # armo el diccionario con los datos
- datos = {"nombre": nombre, "email": email, "tel":tel}
- # incorporo los datos en la lista
- personas.append(datos)
- # limpio las cajas de texto
- caja_email.delete(0,tk.END)
- caja_tel.delete(0,tk.END)
- caja_nombre.delete(0,tk.END)
- # muestro los datos
- pprint.pprint(personas)
- # muestro un cuadro de diálogo para que el Data Entry sepa
- # que los datos se han guardado correctamente
- from tkinter import messagebox
- messagebox.showinfo(title="Información", message="Datos añadidos correctamente")
- # Diagramo como guardar mis datos
- """
- personas = [
- {"nombre":"Ale", "email":"[email protected]", "tel": "12123332"},
- {"nombre":"Juan", "email":"[email protected]", "tel": "993332"},
- {"nombre":"Pepe", "email":"[email protected]", "tel": "12288888"},
- ]
- """
- personas = []
- # necesito crear una ventana
- ventana = tk.Tk()
- # algunas propiedades de la ventana
- ventana.config(width=400, height=300)
- ventana.title("Formulario")
- # evita el redimensionamiento de la ventana
- ventana.resizable(False,False)
- # cada campo tiene una etiqueta y una caja de texto
- # campo nombre
- etiqueta = tk.Label(text="Nombre")
- etiqueta.place(x=20, y=20)
- caja_nombre = tk.Entry()
- caja_nombre.place(x=120,y=20, width=200, height=25)
- # campo email
- etiqueta = tk.Label(text="Email")
- etiqueta.place(x=20, y=70)
- caja_email = tk.Entry()
- caja_email.place(x=120,y=70, width=200, height=25)
- # campo telefono
- etiqueta = tk.Label(text="Teléfono")
- etiqueta.place(x=20, y=120)
- caja_tel = tk.Entry()
- caja_tel.place(x=120,y=120, width=200, height=25)
- # botón
- boton = tk.Button(text="Guardar datos", command=guardar_datos)
- boton.place(x=150, y=180, width=120, height=50)
- ventana.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment