Advertisement
teslariu

form

Oct 9th, 2021
81
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. # script que implementa un formulario
  5.  
  6.  
  7. import tkinter as tk
  8. from tkinter import ttk
  9. from pprint import pprint
  10.  
  11. """
  12. personas = [
  13.     {"nombre":"Juan", "email":"juan@juan", "tel":"(011)122121", "nac":"argentino"},
  14.     {"nombre":"Ana", "email":"juan@juan", "tel":"(011)122121", "nac":"peruana"},
  15.     ]
  16.  
  17. """
  18. personas = []
  19.  
  20. def guardar_datos():
  21.     global personas
  22.     nombre = caja_nombre.get()
  23.     email = caja_email.get()
  24.     nac = caja_nac.get()
  25.     tel = caja_tel.get()
  26.     persona = {"nombre":nombre, "email":email, "tel":tel, "nac":nac}
  27.     personas.append(persona)
  28.     pprint(personas)
  29.     caja_nombre.delete(0, tk.END)
  30.     caja_email.delete(0, tk.END)
  31.     caja_nac.delete(0, tk.END)
  32.     caja_tel.delete(0, tk.END)
  33.  
  34.  
  35.  
  36. ventana = tk.Tk()
  37. ventana.title("FORMULARIO")
  38. ventana.config(width=300, height=400)
  39. # si quisiera tamaño fijo:
  40. ventana.resizable(0,0)
  41.  
  42. ##### campos del formulario ##########
  43. # campo nombre
  44. caja_nombre = ttk.Entry()
  45. caja_nombre.place(x=100, y=30, width=150, height=25)
  46. etiqueta = ttk.Label(text="Nombre")
  47. etiqueta.place(x=10, y=30)
  48.  
  49. # campo email
  50. caja_email = ttk.Entry()
  51. caja_email.place(x=100, y=80, width=150, height=25)
  52. etiqueta = ttk.Label(text="Email")
  53. etiqueta.place(x=10, y=80)
  54.  
  55. # campo nacionalidad
  56. caja_nac = ttk.Entry()
  57. caja_nac.place(x=100, y=130, width=150, height=25)
  58. etiqueta = ttk.Label(text="Nacionalidad")
  59. etiqueta.place(x=10, y=130)
  60.  
  61. # campo telefono
  62. caja_tel = ttk.Entry()
  63. caja_tel.place(x=100, y=180, width=150, height=25)
  64. etiqueta = ttk.Label(text="Teléfono")
  65. etiqueta.place(x=10, y=180)
  66.  
  67. ###################################################
  68.  
  69. #### botón para guardar datos
  70. boton = ttk.Button(text="GUARDAR", command=guardar_datos)
  71. boton.place(x=120, y=250, width=100, height=50)
  72.  
  73. ventana.mainloop()
Advertisement
RAW Paste Data Copied
Advertisement