1 - Création dun ttk.ComboBox Tkinter
Tkinter Combobox est une sorte de liste déroulante à choix sélectionnable par l'utilisateur. C'est une combinaison de saisie et de menu déroulant, comme vous pouvez le voir. Lorsque vous cliquez sur la flèche à droite, vous verrez un menu déroulant indiquant tous les choix possible.
Pour créer une liste ComboBox, vous devez suivre les étapes suivantes :
- Importer la bibliothèque Tkinter et le module ttk
- Créer une liste Python contenant les éléments de la liste ComboBox
- Créer la liste Combobox en utilisant la méthode ttk.Combobox()
- Choisissez l'élément qui s'affiche par défaut, en indiquant son index
Exemple
# -*- coding: utf-8 -*-
# 1) - Importation des modules nécessaires
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
root.geometry('300x200')
labelChoix = tk.Label(root, text = "Veuillez faire un choix !")
labelChoix.pack()
# 2) - créer la liste Python contenant les éléments de la liste Combobox
listeProduits=["Laptop", "Imprimante","Tablette","SmartPhone"]
# 3) - Création de la Combobox via la méthode ttk.Combobox()
listeCombo = ttk.Combobox(root, values=listeProduits)
# 4) - Choisir l'élément qui s'affiche par défaut
listeCombo.current(0)
listeCombo.pack()
root.mainloop()
Ce qui affiche après exéction :

2 - Associer une action à la liste combobox ( bind action)
Vous l'avez sans doute remarqué, que si vous faite la sélection d'un élément de la liste Combobox, aucun évenement ne se produit, tout simplement par ce qu'on a associer aucune action à la liste combobox. Dans ce paragraphe, nous allons montrer, comment créer une action liée à cette combobox.
2.1 - On crée une action liée ( bind action) à l'aide de la commande:
listeCombo.bind("<<ComboboxSelected>>", action)
2.2 - On crée la méthode action
def action(event):
# Obtenir l'élément sélectionné
select = listeCombo.get()
print("Vous avez sélectionné : '", select,"'")
2.3 Code finale de la liste combobox avec action liée
# -*- coding: utf-8 -*-
# 1) - Importation des modules nécessaires
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
root.geometry('300x200')
def action(event):
# Obtenir l'élément sélectionné
select = listeCombo.get()
print("Vous avez sélectionné : '", select,"'")
labelChoix = tk.Label(root, text = "Veuillez faire un choix !")
labelChoix.pack()
# 2) - créer la liste Python contenant les éléments de la liste Combobox
listeProduits=["Laptop", "Imprimante","Tablette","SmartPhone"]
# 3) - Création de la Combobox via la méthode ttk.Combobox()
listeCombo = ttk.Combobox(root, values=listeProduits)
# 4) - Choisir l'élément qui s'affiche par défaut
listeCombo.current(0)
listeCombo.pack()
listeCombo.bind("<<ComboboxSelected>>", action)
root.mainloop()
Younes Derfoufi
CRMEF OUJDA
Post Views: 24 540
Merci 😛
clair ,concis donc parfait donc :Merci.
Merci