1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
| import tkinter as tk
# Vérification de la permutation
def verifier_permutation(choix_vet):
return len(choix_vet) == 4 and all(c.isdigit() and 1 <= int(c) <= 4 for c in choix_vet)
# Fonction à appeler lors du clic sur le bouton "Valider"
def validation_ok():
contenu = champ_texte.get() # Obtenir le contenu du champ de texte
if verifier_permutation(contenu):
global choix_vet
choix_vet = contenu # Stocker le contenu dans la variable choix_vet
fenetre.destroy() # Fermer la fenêtre
else:
print("Veuillez entrer une permutation valide des indices des vecteurs (chiffres de 1 à 4).")
# Création de la fenêtre principale
fenetre = tk.Tk()
fenetre.geometry("1920x1080") # Définition de la taille de la fenêtre
# Vecteur contenant les chemins des images disponibles
all_image_paths = ["1.png", "2.png", "3.png", "4.png", "5.png", "6.png"]
# Vecteur de 4 chiffres pour sélectionner les images
selection_indices = [0, 2, 4, 5] # Ces indices correspondent aux images choisies parmi toutes les images disponibles
# Liste pour stocker les images des boutons
images = []
# Chargement des images et stockage dans la liste 'images'
for index in selection_indices:
image_path = all_image_paths[index]
image = tk.PhotoImage(file=image_path)
images.append(image)
# Création des boutons avec les images sélectionnées
boutons = []
for i, image in enumerate(images):
bouton = tk.Button(fenetre, image=image, command=lambda: None) # Pas besoin de commande pour les boutons d'images
bouton.grid(row=0, column=i, padx=10, pady=10)
boutons.append(bouton)
# Création du champ de texte
champ_texte = tk.Entry(fenetre)
champ_texte.grid(row=1, column=0, columnspan=4, pady=10)
# Création du bouton "Valider"
bouton_valider = tk.Button(fenetre, text="Valider", command=validation_ok)
bouton_valider.grid(row=2, column=0, columnspan=4, pady=5)
# Centrage des boutons horizontalement
fenetre.grid_columnconfigure((0, 1, 2, 3), weight=1)
# Centrage des boutons verticalement
fenetre.grid_rowconfigure(0, weight=1)
# Lancement de la boucle principale
fenetre.mainloop() |
Partager