Как получить конкретное значение из TreeView Widget - PullRequest
0 голосов
/ 25 ноября 2018

Я пытаюсь получить конкретное значение из структуры данных, созданной из моего дерева.

Здесь определяется дерево.

ScoutCalenderView= ttk.Treeview(ScoutCalendar)
ScoutCalenderView["columns"] = ("eventname","startdate","enddate","starttime","endtime","cost","limits")
ScoutCalenderView.grid(row=1,column=1)
ScoutCalenderView.heading("#0", text="",anchor="w")
ScoutCalenderView.column("#0",anchor="center",width=5,stretch=tk.NO)
ScoutCalenderView.heading("eventname", text="Event Name",anchor="w")
ScoutCalenderView.column("eventname",anchor="center",width=80)
ScoutCalenderView.heading("startdate", text="Start Date",anchor="w")
ScoutCalenderView.column("startdate",anchor="center",width=70)
ScoutCalenderView.heading("enddate", text="End Date",anchor="w")
ScoutCalenderView.column("enddate",anchor="center",width=70)
ScoutCalenderView.heading("starttime", text="Start Time",anchor="w")
ScoutCalenderView.column("starttime",anchor="center",width=70)
ScoutCalenderView.heading("endtime", text="End Time",anchor="w")
ScoutCalenderView.column("endtime",anchor="center",width=70)
ScoutCalenderView.heading("cost", text="Cost",anchor="w")
ScoutCalenderView.column("cost",anchor="center",width=70)
ScoutCalenderView.heading("limits", text="Limit",anchor="w")
ScoutCalenderView.column("limits",anchor="center",width=70)
ScoutCalenderView.bind('<ButtonRelease-1>', selectItem)
ScoutCalenderView.grid(row=3,column=1,columnspan=5)

Эта функция вызывается, когда кнопкаrelease.

    def selectItem(a):
curItem = ScoutCalenderView.focus()
print(ScoutCalenderView.item(curItem))

Строка печати (ScoutCalenderView.item (curItem)) дает, например:

{'text': '', 'image': '', 'values': ['jhgfds', '16/11/2018', '16/11/2018', '14:35', '14:35', '£0.0', 0], 'open': 0, 'tags': ''}

Как видите, в части значений есть только данныесловарь.Я хотел бы иметь возможность получить значения в списке.

1 Ответ

0 голосов
/ 25 ноября 2018

Вы можете просто извлечь "значения" из словаря.Это даст вам уже список:

inter_var=ScoutCalenderView.item(curItem)
list_values=inter_var['values']

Если вы напечатаете list_values, вы получите в этом случае:

['jhgfds', '16/11/2018', '16/11/2018', '14:35', '14:35', '£0.0', 0]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...