怎么样能够得到 tkinter下拉框的已选择的内容
如图; 我有个下拉框 ;比如我选了天津;希望能够得到 天津 这两个字符串;
以供后面代码使用;这个应该怎么写??
小白一枚, 如能提供部分代码, 感激不尽;
这样试试看:
from tkinter import *
from tkinter import ttk
root = Tk()
def get_(event):
print(cmb.get())
cmb = ttk.Combobox(root)
cmb.pack()
cmb['value'] = ('上海','北京','天津','广州')
cmb.bind("<<ComboboxSelected>>",get_)
mainloop() Twilight6 发表于 2020-7-12 22:46
这样试试看:
尝过,这样打印没问题‘;但我想用一个变量,来获取选中下拉框的内容;这样我的变量 就可以继续交给下面的代码来使用。。。
现在就是卡在怎么让变量 可以得到下拉框的值。。。。 maxliu06 发表于 2020-7-12 23:13
尝过,这样打印没问题‘;但我想用一个变量,来获取选中下拉框的内容;这样我的变量 就可以继续交给 ...
不是等于就好了吗?
from tkinter import *
from tkinter import ttk
root = Tk()
def get_(event):
global temp
temp = cmb.get()
cmb = ttk.Combobox(root)
cmb.pack()
cmb['value'] = ('上海','北京','天津','广州')
temp = None
cmb.bind("<<ComboboxSelected>>",get_)
mainloop()
Twilight6 发表于 2020-7-12 23:14
不是等于就好了吗?
不行呀,
cmb.bind("<<ComboboxSelected>>",get_)后面加个 print('temp')是没有输出的; maxliu06 发表于 2020-7-13 09:24
不行呀,
cmb.bind("",get_)后面加个 print('temp')是没有输出的;
你在后面肯定不行啊,除非你开线程 本帖最后由 maxliu06 于 2020-7-13 09:49 编辑
Twilight6 发表于 2020-7-13 09:26
你在后面肯定不行啊,除非你开线程
那能不能弄成另一种方式;
比如,在下拉框旁边,加一下确定的按钮;
如果在下拉框中 选中了 北京 ,然后点确定;
那么就把北京 赋值给 一个变量; 然后打印该 变量;
maxliu06 发表于 2020-7-13 09:47
那能不能弄成另一种方式;
比如,在下拉框旁边,加一下确定的按钮;
赋值变量上一个代码已经实现了,这里只是多加了打印
from tkinter import *
from tkinter import ttk
root = Tk()
def get_(event):
global temp
temp = cmb.get()
def show():
print(temp)
cmb = ttk.Combobox(root)
cmb.pack()
cmb['value'] = ('上海','北京','天津','广州')
temp = None
cmb.bind("<<ComboboxSelected>>",get_)
button = Button(root,text='确认',command=show)
button.pack()
mainloop() Twilight6 发表于 2020-7-13 09:53
赋值变量上一个代码已经实现了,这里只是多加了打印
老大;点确认 它一直都是None的; 就是赋值不成功呀。 maxliu06 发表于 2020-7-13 09:56
老大;点确认 它一直都是None的; 就是赋值不成功呀。
我错了。 maxliu06 发表于 2020-7-13 09:56
老大;点确认 它一直都是None的; 就是赋值不成功呀
你改动代码了吧? 赋值成功了啊,你temp 没选择肯定打印为 None Twilight6 发表于 2020-7-13 09:57
你改动代码了吧? 赋值成功了啊,你temp 没选择肯定打印为 None
再请教两个问题:
1、get_ 函数可以return temp 吗;如果 可以的话, 怎么样才能把return 值 赋值给一个变量?
2、代码中 temp =None 是啥意思? 自己敲代码时,就是少了这一个。 maxliu06 发表于 2020-7-13 10:02
再请教两个问题:
1、get_ 函数可以return temp 吗;如果 可以的话, 怎么样才能把return 值 赋值给一 ...
1、get_ 函数可以return temp 吗;如果 可以的话, 怎么样才能把return 值 赋值给一个变量?
不行吧,我也不太清楚,没尝试过,你可以直接声明下你需要赋值的变量,在函数里面直接赋值就好了
2、代码中 temp =None 是啥意思? 自己敲代码时,就是少了这一个。
初始化 temp 这个变量而已,你等于 0 也不影响,只要能初始化就好了,主要是 get_方法中 global 的声明变量,然后再 get_方法中改变 temp 变量的值,也就是等于给 temp 重新赋值了
页:
[1]