[英]How to Get Index of Selected Option inTkinter Combobox
以下代碼使我可以從組合框中打印出選定的值,但是我需要打印(獲取)列表中選定項的索引號。 你能讓我知道怎么做嗎?
import Tkinter
import tkMessageBox
from Tkinter import *
import ttk
from ttk import *
app = Tk()
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)
app.mainloop()
在組合框上使用current
方法。
import Tkinter
import tkMessageBox
from Tkinter import *
import ttk
from 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()
是的,如果您將bind()
與current()
bind()
則可以。
這是一個快速演示:
import Tkinter
import tkMessageBox
from Tkinter import *
import ttk
from 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()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.