Advertisement
teslariu

formul

Feb 11th, 2022
1,189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.22 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. """
  5. Un paradigma de programación es una forma de pensar un problema
  6. para representarlo como un algoritmo
  7. La POO (programación orientada a objetos) es un paradigma que establece
  8. que el mundo real está compuesto por objetos (sustantivos) con
  9. diversas propiedades (adjetivos) y que pueden realizar acciones (verbos)
  10.  
  11. Una clase es un conjunto de objetos homogéneos: ej: la clase Perro, Gato
  12. SerHumano, Avion, Cuadrado, Silla
  13.  
  14. Un objeto en particular se denomina INSTANCIA. EJ. LeoMessi es una instancia
  15. de la clase SerHumano.
  16.  
  17. Las propiedades de los objetos se denominan atributos. EJ. la clase Perro
  18. tiene como atributos edad, raza, altura, peso, etc
  19.  
  20. Los mètodos son las acciones que puede hacer un objeto: Ej Clase Perro
  21. tiene como métodos ladrar, comer, saltar, jugar, etc.
  22.  
  23. """
  24. # En programción gráfica, tenemos un objeto principal: ventana y objetos
  25. # secundarios (controles o widgets)
  26.  
  27. # existen varias bibliotecas gráficas, pero solo una en la biblioteca std
  28. # de Python: tkinter
  29.  
  30. import tkinter as tk
  31. from pprint import pprint
  32.  
  33. def clic():
  34.     global personas
  35.    
  36.     # leo los valores de las cajas
  37.     nombre = caja_nombre.get()
  38.     email = caja_email.get()
  39.     tel = caja_tel.get()
  40.     edad = caja_edad.get()
  41.    
  42.     # agrego los datos a la lista
  43.     persona = {"nombre":nombre, "email":email, "tel":tel, "edad":edad}
  44.     personas.append(persona)
  45.    
  46.     # imprimo todos los valores almacenados hasta el momento
  47.     print("\nUsuarios")
  48.     pprint(personas)
  49.    
  50.    
  51.     # borro los datos del formulario
  52.     caja_edad.delete(0,tk.END)
  53.     caja_tel.delete(0,tk.END)
  54.     caja_email.delete(0,tk.END)
  55.     caja_nombre.delete(0,tk.END)
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62. # voy a guardar los datos de las personas en una lista de diccionarios
  63. # ej:
  64. # personas = [ {"nombre":"Juan", "email":"juan@ki.com",....}]
  65. personas = []
  66.  
  67. # creo una ventana
  68. ventana = tk.Tk()
  69. ventana.title("Formulario")
  70. ventana.config(width=400, height=400, bg="light salmon")
  71.  
  72. # campo NOMBRE
  73. caja_nombre = tk.Entry()
  74. caja_nombre.place(x=120, y=50, width=200, height=25)
  75.  
  76. etiqueta = tk.Label(
  77.         text="Nombre",
  78.         bg="light salmon",
  79.         font=('arial',12,'bold'),
  80.         fg="red"
  81.         )
  82. etiqueta.place(x=30, y=50)
  83.  
  84. # campo EMAIL
  85. caja_email = tk.Entry()
  86. caja_email.place(x=120, y=100, width=200, height=25)
  87.  
  88. etiqueta = tk.Label(
  89.         text="Email",
  90.         bg="light salmon",
  91.         font=('arial',12,'bold'),
  92.         fg="red"
  93.         )
  94. etiqueta.place(x=30, y=100)
  95.  
  96. # campo TEL
  97. caja_tel = tk.Entry()
  98. caja_tel.place(x=120, y=150, width=200, height=25)
  99.  
  100. etiqueta = tk.Label(
  101.         text="Telefono",
  102.         bg="light salmon",
  103.         font=('arial',12,'bold'),
  104.         fg="red"
  105.         )
  106. etiqueta.place(x=30, y=150)
  107.  
  108. # campo EDAD
  109. caja_edad = tk.Entry()
  110. caja_edad.place(x=120, y=200, width=200, height=25)
  111.  
  112. etiqueta = tk.Label(
  113.         text="Edad",
  114.         bg="light salmon",
  115.         font=('arial',12,'bold'),
  116.         fg="red"
  117.         )
  118. etiqueta.place(x=30, y=200)
  119.  
  120. # LLAMADO A FUNCIONES DESDE ENTORNO GRAFICO
  121. # los botones llaman a funciones de consola de Python mediante la palabra
  122. # reservada 'command'; pero no puedo pasarle argumentos, por eso se
  123. # escribe sin paréntesis, es clic y no clic()
  124.  
  125. boton = tk.Button(text="Guardar", command=clic)
  126. boton.place(x=120, y=250, width=100, height=40)
  127.  
  128. ventana.mainloop()
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement