84 lines
2.9 KiB
Python
84 lines
2.9 KiB
Python
import tkinter as tk
|
|
from tkinter import ttk
|
|
|
|
class Aplicacion(tk.Tk):
|
|
def __init__(self):
|
|
super().__init__()
|
|
|
|
# Configuración de la ventana principal
|
|
self.title("Aplicación con Tkinter")
|
|
self.geometry("600x400")
|
|
|
|
# Creación del menú superior
|
|
self.crear_menu()
|
|
|
|
# Creación del frame de contenido central
|
|
self.crear_frame_central()
|
|
|
|
# Creación de la barra de estado inferior
|
|
self.crear_barra_estado()
|
|
|
|
def crear_menu(self):
|
|
# Barra de menú
|
|
menubar = tk.Menu(self)
|
|
|
|
# Menú "Archivo"
|
|
archivo_menu = tk.Menu(menubar, tearoff=0)
|
|
archivo_menu.add_command(label="Nuevo")
|
|
archivo_menu.add_command(label="Abrir")
|
|
archivo_menu.add_command(label="Guardar")
|
|
archivo_menu.add_separator()
|
|
archivo_menu.add_command(label="Salir", command=self.quit)
|
|
menubar.add_cascade(label="Archivo", menu=archivo_menu)
|
|
|
|
# Menú "Editar"
|
|
editar_menu = tk.Menu(menubar, tearoff=0)
|
|
editar_menu.add_command(label="Deshacer")
|
|
editar_menu.add_command(label="Rehacer")
|
|
menubar.add_cascade(label="Editar", menu=editar_menu)
|
|
|
|
# Menú "Ayuda"
|
|
ayuda_menu = tk.Menu(menubar, tearoff=0)
|
|
ayuda_menu.add_command(label="Acerca de")
|
|
menubar.add_cascade(label="Ayuda", menu=ayuda_menu)
|
|
|
|
# Asignar el menú a la ventana
|
|
self.config(menu=menubar)
|
|
|
|
def crear_frame_central(self):
|
|
# Frame central con pestañas
|
|
frame_central = ttk.Frame(self)
|
|
frame_central.pack(fill="both", expand=True, padx=10, pady=10)
|
|
|
|
# Notebook para las pestañas
|
|
notebook = ttk.Notebook(frame_central)
|
|
notebook.pack(fill="both", expand=True)
|
|
|
|
# Crear cinco solapas
|
|
for i in range(1, 6):
|
|
tab = ttk.Frame(notebook)
|
|
notebook.add(tab, text=f"Solapa {i}")
|
|
# Añadir un Label en cada solapa para diferenciarla
|
|
label = ttk.Label(tab, text=f"Contenido de la Solapa {i}")
|
|
label.pack(pady=10)
|
|
|
|
def crear_barra_estado(self):
|
|
# Barra de estado inferior con tres secciones
|
|
barra_estado = ttk.Frame(self, relief="sunken")
|
|
barra_estado.pack(side="bottom", fill="x")
|
|
|
|
# Crear tres secciones en la barra de estado
|
|
seccion_izquierda = ttk.Label(barra_estado, text="Sección 1")
|
|
seccion_izquierda.pack(side="left", padx=10)
|
|
|
|
seccion_centro = ttk.Label(barra_estado, text="Sección 2")
|
|
seccion_centro.pack(side="left", padx=10)
|
|
|
|
seccion_derecha = ttk.Label(barra_estado, text="Sección 3")
|
|
seccion_derecha.pack(side="right", padx=10)
|
|
|
|
# Crear y ejecutar la aplicación
|
|
if __name__ == "__main__":
|
|
app = Aplicacion()
|
|
app.mainloop()
|