簡體   English   中英

將命令添加到Tkinter OptionMenu?

[英]Adding command to a Tkinter OptionMenu?

我正在Python 2.7.8中編寫一些代碼,其中包括OptionMenu小部件。 我想創建一個OptionMenu ,當更改選項時會調用一個函數,但我也希望在列表中找到可能的選項,因為我的最終OptionMenu將具有許多選項。

我已使用以下代碼創建一個調用函數的OptionMenu

from Tkinter import*

def func(value):
    print(value)

root = Tk()

var = StringVar()
DropDownMenu=OptionMenu(root, var, "1", "2", "3", command=func)
DropDownMenu.place(x=10, y=10)

root.mainloop()

我還發現了以下代碼,該代碼創建一個OptionMenu並在列表中找到選項:

from Tkinter import*

root = Tk()

Options=["1", "2", "3"]
var = StringVar()
DropDownMenu=apply(OptionMenu, (root, var) + tuple(Options))
DropDownMenu.place(x=10, y=10)

root.mainloop()

我將如何創建一個OptionMenu調用時更改選項的功能,並從列表中獲取可能的選項?

永遠不需要直接應用調用,這就是在2.7中棄用並且在3.0中棄用的原因。 而是使用* seq語法。 只需結合您所做的兩件事即可。 以下內容似乎可以滿足您的要求。

from tkinter import *

def func(value):
    print(value)

root = Tk()
options = ["1", "2", "3"]
var = StringVar()
drop = OptionMenu(root, var, *options, command=func)
drop.place(x=10, y=10)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM