teslariu

menu

Jan 22nd, 2021
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.87 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. """
  5. Programa que implementa una barra de menu con dos menus, 'Archivo' y 'Ayuda'.
  6. Archivo tiene como submenues Nuevo y Guardar, Ayuda tiene como submenúes
  7. Ayuda y Acerca de
  8. """
  9. import tkinter as tk
  10. from tkinter import ttk
  11. from tkinter import messagebox # muestra cuadros de diálogos
  12.  
  13. def nuevo():
  14.     print("Acá se debe abrir un archivo nuevo....")
  15.    
  16. def guardar():
  17.     print("Acá se debe guardar un archivo....")
  18.    
  19. def ayuda():
  20.     print("Acá se debe mostrar la ayuda....")
  21.    
  22. def acerca_de():
  23.     print("Acá se debe mostrar info del desarrollador...")
  24.    
  25. # ventana con la barra de menúes
  26. ventana = tk.Tk()
  27. ventana.title("Mi primera app")
  28. barra_de_menu = tk.Menu()
  29. ventana.config(width=300, height=200, menu=barra_de_menu)
  30.  
  31. # menu archivo
  32. menu_archivo = tk.Menu(barra_de_menu, tearoff=0)
  33. menu_archivo.add_command(label="Nuevo", command=nuevo)
  34. menu_archivo.add_command(label="Guardar", command=guardar)
  35.  
  36. # menu ayuda
  37. menu_ayuda = tk.Menu(barra_de_menu, tearoff=0)
  38. menu_ayuda.add_command(label="Ayuda", command=ayuda)
  39. menu_ayuda.add_command(label="Acerca de", command=acerca_de)
  40.  
  41. # agregamos menu_archivo y menu_ayuda a la barra de menues
  42. barra_de_menu.add_cascade(label="Archivo", menu=menu_archivo)
  43. barra_de_menu.add_cascade(label="Ayuda", menu=menu_ayuda)
  44.  
  45.  
  46. #########  cuadros de dialogo  #####################
  47.  
  48. # siempre retornan OK
  49. messagebox.showinfo(title="INFO", message="Hola, acepte este saludo")
  50. messagebox.showwarning(title="OJO", message="Tenga cuidado...")
  51. messagebox.showerror(title="ERROR", message="2+1 no es 10")
  52.  
  53. # Retornan True o False
  54. messagebox.askokcancel(title="Pregunta", message="¿Desea salir?")
  55. messagebox.askyesno(title="DUDA", message="¿Seguro desea salir?")
  56. messagebox.askretrycancel(title="OPERACION FALLIDA", message="¿Qué hacemos?")
  57.  
  58. ventana.mainloop()
  59.  
Add Comment
Please, Sign In to add comment