Python appJar-ListBox/OptionBox小部件在select上调用函数

Python appJar-ListBox/OptionBox小部件在select上调用函数,python,appjar,Python,Appjar,我最近开始使用appJar python模块,但我一直在使用它的小部件,即ListBox和OptionBox 我无法找到在选择ListBox或OptionBox中的项时如何调用函数。我找到了此语法,但找不到要在何处定义要调用的函数: .selectListItem(title, item, callFunction=True) .changeOptionBox(title, newOptions, index, callFunction=False) 这是代码,到目前为止我已经知道了。正如您所

我最近开始使用appJar python模块,但我一直在使用它的小部件,即ListBox和OptionBox

我无法找到在选择ListBox或OptionBox中的项时如何调用函数。我找到了此语法,但找不到要在何处定义要调用的函数:

.selectListItem(title, item, callFunction=True)
.changeOptionBox(title, newOptions, index, callFunction=False)
这是代码,到目前为止我已经知道了。正如您所看到的,我可以打印出所选的值,但通过单击按钮调用方法

from appJar import gui

def press(btn):
    if btn == "Cancel":
        app.stop()
    elif btn == "Show":
        list_select()
    else:
        print('not defined yet')

def list_select():
    app.infoBox("Info", "You selected " + app.getOptionBox("optionbox") + "\nBrowsing " + app.getListBox("list")[0])

app = gui("Database Editor", "500x500")
app.addOptionBox("optionbox", ["a", "b", "c", "d"])
app.addListBox("list", ["one", "two", "three", "four"])

app.addButtons(["Show", "Cancel"], press)
app.go()

你们有谁知道,我怎样才能直接在select上打印出这些值吗?

我已经算出了!事实上,ChangeFunction可以通过事件函数触发(正如我在评论中发布的那样)

我用这两个事件来做这件事:

app.setOptionBoxChangeFunction("optionbox", opt_changed)
app.setListBoxChangeFunction("list", lst_changed)
整个工作代码如下:

from appJar import gui

def opt_changed(opt):
    print(app.getOptionBox("optionbox"))

def lst_changed(lst):
    print(app.getListBox("list")[0])

def press(btn):
    if btn == "Cancel":
        app.stop()
    elif btn == "Show":
        list_select()
    else:
        print('not defined yet')

def list_select():
    app.infoBox("Info", "You selected " + app.getOptionBox("optionbox") + "\nBrowsing " + app.getListBox("list")[0])

app = gui("Database Editor", "500x500")
app.addOptionBox("optionbox", ["a", "b", "c", "d"])
app.addListBox("list", ["one", "two", "three", "four"])

app.setOptionBoxChangeFunction("optionbox", opt_changed)
app.setListBoxChangeFunction("list", lst_changed)

app.addButtons(["Show", "Cancel"], press)
app.go()

浏览appJar的文档,是否可以使用
ChangeFunction
event()键直接打印值?