获取combobox下拉列表框的索引
当点击下拉列表框的某一选项时,返回该选项的索引值。毕设最后一个问题了,一直解决不了...真的很急 本帖最后由 qq1151985918 于 2021-5-12 10:12 编辑
秋月明 发表于 2021-5-12 10:08
这样在绑定函数外输出comb_index的值还是None,我是需要在这个函数外用到值
不会的
import tkinter
from tkinter import ttk
comb_index =
def click_comb(*arg):
print(comb.current(), comb.get())
comb_index = comb.current()
def show_comb_index():
print(comb_index)
root = tkinter.Tk()
comb = ttk.Combobox(root)
comb["values"] = ("AAA","BBB","CCC","DDD")
comb.current(0)
comb.bind("<<ComboboxSelected>>",click_comb)
comb.pack()
button = tkinter.Button(text = "打印索引值", command = show_comb_index)
button.pack()
root.mainloop()
tk还是qt5 import tkinter
from tkinter import ttk
def click_comb(*arg):
print(comb.current(), comb.get())
root = tkinter.Tk()
comb = ttk.Combobox(root)
comb["values"]=("AAA","BBB","CCC","DDD")
comb.current(0)
comb.bind("<<ComboboxSelected>>",click_comb)
comb.pack()
root.mainloop() qq1151985918 发表于 2021-5-11 15:55
你好,我这个方法我知道;但是这个只能在绑定函数里获取,我的疑问是如何返回获取到的当前索引的索引值。
我写的 return comb.current() ,这个方法不行... hrp 发表于 2021-5-11 11:54
tk还是qt5
tkinter 本帖最后由 qq1151985918 于 2021-5-11 18:14 编辑
秋月明 发表于 2021-5-11 16:29
你好,我这个方法我知道;但是这个只能在绑定函数里获取,我的疑问是如何返回获取到的当前索引的索引值。 ...
我没明白你的意思,你说详细一些吧,你说的返回索引值是返回到哪里?要用在什么地方?不行的话可以加个按钮不就好了 本帖最后由 秋月明 于 2021-5-12 09:56 编辑
qq1151985918 发表于 2021-5-11 18:07
我没明白你的意思,你说详细一些吧,你说的返回索引值是返回到哪里?要用在什么地方?不行的话可以加个 ...
#设置“朝向”列表框
label_orient = Label(frame_prehouse,text="朝向:",font=("宋体",15))
label_orient.grid(row=2,columnspan=2,sticky=W,padx=160,pady=20)
Orient = StringVar()
list_orient = ttk.Combobox(frame_prehouse, textvariable=Orient, state='readonly', width=12)
list_orient.grid(row=2,columnspan=2,sticky=E)
value = ['东', '东北', '东南', '北', '南', '西', '西北', '西南']
list_orient["value"] = ( '东', '东北', '东南', '北', '南', '西', '西北', '西南')
list_orient.current(0)
def getorient(*args):
print(list_orient.current())
list_orient.bind("<<ComboboxSelected>>", getorient)
就是返回一个顺序,比如我点击了东南,我需要返回一个3;我需要的是 点击列表框里任意选项后就直接得到对应的数字,不用按钮 秋月明 发表于 2021-5-12 09:54
#设置“朝向”列表框
label_orient = Label(frame_prehouse,text="朝向:",font=("宋体 ...
我是问你返回到哪里?返回到label或者别的地方?想怎么使用这个返回值 本帖最后由 秋月明 于 2021-5-12 09:58 编辑
qq1151985918 发表于 2021-5-12 09:56
我是问你返回到哪里?返回到label或者别的地方?想怎么使用这个返回值
返回一个变量,我需要用到这个变量
orient_num = int(getorient()) + 4
就是调用getorient这个绑定函数后得到这个返回值 秋月明 发表于 2021-5-12 09:57
返回一个变量,我需要用到这个变量
orient_num = int(getorient()) + 4
就是调用getorient这个绑定函 ...
import tkinter
from tkinter import ttk
comb_index =
def click_comb(*arg):
print(comb.current(), comb.get())
comb_index = comb.current()
root = tkinter.Tk()
comb = ttk.Combobox(root)
comb["values"] = ("AAA","BBB","CCC","DDD")
comb.current(0)
comb.bind("<<ComboboxSelected>>",click_comb)
comb.pack()
root.mainloop() 本帖最后由 秋月明 于 2021-5-12 10:10 编辑
qq1151985918 发表于 2021-5-12 10:04
这样在绑定函数外输出comb_index的值还是None,我是需要在这个函数外用到值
算了兄弟我还是用listbox吧,它有个curselection方法可以,谢谢你帮我解答 秋月明 发表于 2021-5-12 10:08
这样在绑定函数外输出comb_index的值还是None,我是需要在这个函数外用到值
算了兄弟我还是用listbo ...
列表是可以当做全局变量使用的,或者你可以声明一个全局变量 qq1151985918 发表于 2021-5-12 10:10
不会的
解决了!这个方法我之前想到过..当时只想着return一个值了...
谢谢你!
页:
[1]