2016-05-27 4 views
1

Я делаю небольшой проект с использованием Python 3.4/5 в сочетании с Tkinter. Я создал список, в котором отображаются все элементы в каталоге. Я не могу найти способ выбрать элемент, а затем сохранить имя в переменной для последующего использования.Выбор элемента из списка и последующего использования имени элемента

listnotes = Listbox(notebox, selectmode=SINGLE) 
listnotes.pack(side=LEFT, fill=Y, padx=10, pady=10) 
listnotes.insert(END, "notes") 
for i in glob.glob("\TESTFOLDER\*.txt"): 
    i = i[12:] 
    listnotes.insert(END, i) 

Я прочел, что использование функции listnotes.get (ACTIVE) может работать. Также я не работал с python так долго, поэтому любое понимание будет оценено.

+0

Вы можете использовать tkFileDialog, чтобы сделать это. Одна опция tkFileDialog возвращает имя файла http://effbot.org/tkinterbook/tkinter-file-dialogs.htm –

ответ

2

Вы должны использовать Bindings сделать так,

Для Ex:

listnotes.bind("<Return>", dosomething) #to bind to your enterkey 

, а затем метод curselection, связанный с Listbox

def dosomething(event): 
    """ 
    on enter, capture the value from the Listbox 
    and assign the value captured to value via the get method form the selected value 
    """ 
    try: 
     selection = listnotes.curselection() 
     value = listnotes.get(selection[0]) 

    except Exception as select: 
     print("Nothing selected") 
     pass 
+0

приветствует человека, получил его. – furthoc

+0

koodos, не забудьте ответить =) – glls