Crea una ventana de Tkinter con varios botones.

🟦 ¿Qué hace este código?
Crea una ventana de Tkinter con varios botones.
Cada botón hace algo distinto: abrir una web, llamar a una clase, o cerrar la ventana.
Además, dentro de la clase MenuApp se crean todas las herramientas que usarás en tu menú (Variables, Listas, Colores, etc.).
🟦 Explicación clara del código
1. Importaciones
import tkinter as tk
import webbrowser
tkinter→ sirve para crear ventanas y botones.webbrowser→ sirve para abrir páginas web.
2. Importas tus clases
from ClassMenu import Menus
from ClassVariables import Variables
...
Estas son tus clases personalizadas.
Las usarás cuando el usuario pulse un botón.
3. Creas la clase principal del menú
class MenuApp:
Esta clase contiene todo el menú.
4. Constructor __init__
def __init__(self, root):
rootes la ventana principal.- Aquí configuras la ventana y creas los botones.
5. Configuración de la ventana
self.root = root
self.root.configure(bg="#1e1e1e")
self.root.title(" Programación es Python ")
- Guardas la ventana en
self.root. - Le pones un color de fondo.
- Le pones un título.
6. Creas las instancias de tus clases
self.menu1 = Variables()
self.app = AppColores()
self.numerobinario = DecimalBinario()
...
Esto significa:
👉 “Voy a usar estas clases dentro del menú, así que las preparo aquí”.
7. BOTÓN 1 → Variables
boton_variables = tk.Button(
root,
text="VARIABLES",
...
command=lambda: (
self.menu1.variables(),
webbrowser.open_new_tab("https://danielcaraballo.es/variables-en-python/")
)
)
boton_variables.pack(pady=5)
¿Qué hace este botón?
- Llama al método
variables()de tu claseVariables. - Abre tu página web sobre variables.
Todo eso ocurre al pulsarlo.
8. BOTÓN 2 → f-format
boton_format = tk.Button(
root,
text="f- Format",
...
command=lambda: webbrowser.open_new_tab("https://danielcaraballo.es/f-f-format-de-un-strings/")
)
boton_format.pack(pady=10)
Este botón solo abre una web.
9. BOTÓN 3 → Listas
boton_listas = tk.Button(
root,
text="Listas",
...
command=lambda: webbrowser.open_new_tab("https://danielcaraballo.es/las-listas-en-python/")
)
boton_listas.pack(pady=10)
Abre tu página sobre listas.
10. BOTÓN 4 → Instalación
boton_instalacion = tk.Button(
root,
text="Instalación y IDE de trabajo",
...
command=lambda: webbrowser.open_new_tab("https://danielcaraballo.es/lenguaje-de-programacion-python/")
)
boton_instalacion.pack(pady=10)
Abre tu página sobre instalación de Python.
11. BOTÓN 5 → Cerrar menú
boton_volver = tk.Button(
root,
text="Menu anterior",
...
command=root.destroy
)
boton_volver.pack(pady=10)
Este botón cierra la ventana.
12. Método para iniciar el menú
@staticmethod
def iniciar_menu():
root = tk.Tk()
root.geometry("300x300+900+20")
MenuApp(root)
root.mainloop()
Esto:
- Crea la ventana.
- Le da tamaño y posición.
- Crea el menú dentro de la ventana.
- Mantiene la ventana abierta.
🟦 Resumen súper fácil
Tu código:
- Crea una ventana.
- Crea varios botones.
- Cada botón abre una web o llama a una clase.
- El último botón cierra la ventana.
- Todo está organizado dentro de una clase llamada
MenuApp.






