Tkinter组合框仅显示列表的特定值

2024-10-01 00:26:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在Tkinter组合框中显示一个元组的python列表

我只需要显示每个元组的第一个值,即:“Saint Sushi”、“Aime Sushi”和“SoZo Sushi”,而不是整个元组,但没有成功

liste = [('Saint Sushi', '424 Duluth'),
         ("Aime Sushi", '4108 St Denis'),
         ('SoZo Sushi', '4118 St Denis')]

import tkinter as tk
from tkinter import ttk


root = tk.Tk()
root.geometry('200x300')

def action(event):
    select = listeCombo.get()
    print ('votre selection :', select)


labelChoix = tk.Label(root, text='Choix du lieu')
labelChoix.pack()

#I tried to modify the "values= liste" below with to access liste[0] of each tuple,
#but it does not work
listeCombo = ttk.Combobox(root, values = liste)
listeCombo.current(0)
listeCombo.bind('<<ComboboxSelected>>', action)
listeCombo.pack()

root.mainloop()

Tags: importtkinteractionroottk元组stttk