Advertisement
JPablos

Convertir pies a metros. Simple. Python

Jun 3rd, 2023 (edited)
946
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.66 KB | Science | 0 0
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Fri Jun  2 06:33:22 2023
  4. Este código permite hacer la converión de pies a metros.
  5. Utiliza tkinter para crear una interfaz gráfica.
  6.  
  7. @alpfa
  8. """
  9.  
  10. import tkinter as tk
  11. from tkinter import ttk
  12. from tkinter import messagebox
  13.  
  14.  
  15. def calculate():
  16.     """
  17.    Éste código permite el uso de una Interfaz gráfica basada en tkinter
  18.    para hacer la converión de pies a metros
  19.  
  20.    Returns
  21.    -------
  22.    El cálculo en metros como 'float'.
  23.  
  24.    """
  25.     try:
  26.         value = float(feet.get())
  27.         meters.set(int(0.3048 * value * 10000.0 + 0.5) / 10000.0)
  28.     except ValueError:
  29.         messagebox.showerror("Error", "Por favor, ingrese un valor numérico.")
  30.  
  31.  
  32. root = tk.Tk()
  33. root.title("Pies a Metros")
  34.  
  35. mainframe = ttk.Frame(root, padding="3 3 12 12")
  36. mainframe.grid(column=0, row=0, sticky=(tk.N, tk.W, tk.E, tk.S))
  37. root.columnconfigure(0, weight=1)
  38. root.rowconfigure(0, weight=1)
  39.  
  40. feet = tk.StringVar()
  41. feet_entry = ttk.Entry(mainframe, width=7, textvariable=feet)
  42. feet_entry.grid(column=2, row=1, sticky=(tk.W, tk.E))
  43.  
  44. meters = tk.StringVar()
  45. ttk.Label(mainframe, textvariable=meters).grid(column=2, row=2, sticky=(tk.W, tk.E))
  46.  
  47. ttk.Button(mainframe, text="Calcular", command=calculate).grid(column=3, row=3, sticky=tk.W)
  48.  
  49. ttk.Label(mainframe, text="pies").grid(column=3, row=1, sticky=tk.W)
  50. ttk.Label(mainframe, text="son equivalentes a").grid(column=1, row=2, sticky=tk.E)
  51. ttk.Label(mainframe, text="metros").grid(column=3, row=2, sticky=tk.W)
  52.  
  53. for child in mainframe.winfo_children():
  54.     child.grid_configure(padx=5, pady=5)
  55.  
  56. feet_entry.focus()
  57. root.bind("<Return>", calculate)
  58.  
  59. root.mainloop()
  60.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement