How to Get Index of Selected Option inTkinter Combobox How to Get Index of Selected Option inTkinter Combobox tkinter tkinter

How to Get Index of Selected Option inTkinter Combobox


Use the current method on the combobox.

import Tkinterimport tkMessageBoxfrom Tkinter import *import ttkfrom ttk import *app = Tk()def OptionCallBack(*args):    print variable.get()    print so.current()variable = StringVar(app)variable.set("Select From List")variable.trace('w', OptionCallBack)so = ttk.Combobox(app, textvariable=variable)so.config(values =('Tracing Upstream', 'Tracing Downstream','Find Path'))so.grid(row=1, column=4, sticky='E', padx=10)app.mainloop()


Yes you can if you combine bind() with current().

Here is a quick demo:

import Tkinterimport tkMessageBoxfrom Tkinter import *import ttkfrom ttk import *app = Tk()def display_selected_item_index(event):    global so   print 'index of this item is: {}\n'.format(so.current())def OptionCallBack(*args):    print variable.get()variable = StringVar(app)variable.set("Select From List")variable.trace('w', OptionCallBack)so = ttk.Combobox(app, textvariable=variable)so.config(values =('Tracing Upstream', 'Tracing Downstream','Find Path'))so.grid(row=1, column=4, sticky='E', padx=10)    so.bind("<<ComboboxSelected>>", display_selected_item_index)  app.mainloop()