Generar Password
Ahora se va generar un contraseña de 8 dígitos que posteriormente con los datos capturados se insertará en mysql. Escribimos el siguiente código
import tkinter as tk
import secrets
import string
from tkinter import font, ttk
from tkinter import messagebox as mb
# Definir la función que se ejecutará cuando se haga clic en el botón
def enviar_password():
if len(nombre.get().strip()) and len(apellidoPaterno.get().strip())\
and len(email.get().strip()) and len(whatsapp.get().strip()):
password=Generar_password()
mb.showinfo("Información", f"La contraseña {password} fue enviada")
else:
mb.showerror("Error","Campo vacío")
def Generar_password():
letters = string.ascii_letters
digits = string.digits
special_chars = string.punctuation
alphabet = letters + digits + special_chars
pwd_length = 8
pwd = ''
for i in range(pwd_length):
pwd += ''.join(secrets.choice(alphabet))
return pwd
# Crear la ventana principal
ventana = tk.Tk()
ventana.title("SendKeyGen")
ventana.geometry("500x600")
label = tk.Label(ventana, text="Sendkeygen")
label.pack(anchor="center")
label.config(fg="white", # Foreground
bg="gray", # Background
font=("Verdana",24))
# Crear los widgets del formulario
labelNombre=tk.Label(ventana, text="Nombre:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white", # Foreground
bg="gray", # Background
font=("Verdana",14))
nombre = ttk.Entry(font=font.Font(family="Times", size=14),width=50)
nombre.pack(anchor="nw")
labelNombre=tk.Label(ventana, text="Apellido Paterno:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white", # Foreground
bg="gray", # Background
font=("Verdana",14))
apellidoPaterno = ttk.Entry(font=font.Font(family="Times", size=14),width=50)
apellidoPaterno.pack(anchor="nw")
labelNombre=tk.Label(ventana, text="Apellido Materno:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white", # Foreground
bg="gray", # Background
font=("Verdana",14))
apellidoMaterno = ttk.Entry(font=font.Font(family="Times", size=14),width=50)
apellidoMaterno.pack(anchor="nw")
labelNombre=tk.Label(ventana, text="Email:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white", # Foreground
bg="gray", # Background
font=("Verdana",14))
email = ttk.Entry(font=font.Font(family="Times", size=14),width=50)
email.pack(anchor="nw")
labelNombre=tk.Label(ventana, text="WhatsApp:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white", # Foreground
bg="gray", # Background
font=("Verdana",14))
whatsapp = ttk.Entry(font=font.Font(family="Times", size=14),width=15)
whatsapp.pack(anchor="nw")
labelNombre=tk.Label(ventana, text="Puesto:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white", # Foreground
bg="gray", # Background
font=("Verdana",14))
puesto = ttk.Combobox(values=["Administrador", "Gerente", "Empleado"], font=font.Font(size=15))
puesto.current(0)
puesto.pack(anchor="nw")
boton_enviar = tk.Button(ventana, text="Enviar Password", command=enviar_password,
width=30, height=5,bg="gray",fg="white",font=("Comic Sans", 10,"bold"))
boton_enviar.pack(anchor="center")
# Mostrar la ventana
ventana.mainloop()
Generando la contraseña
Se va modificar hasta llegar al resultado final.