You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Beeware Toga confirm_dialog回调函数报错问题求助

Beeware confirm_dialog回调函数参数错误问题解决

我尝试使用Beeware的confirm_dialog窗口,原本以为on_result回调仅在点击OK按钮时触发。测试时confirm_dialog窗口可正常弹出,但点击OK或Cancel按钮时均出现错误:func2() takes 1 positional argument but 3 were given。我在dev模式和run android环境下都做了尝试,问题一致。

更新: 我根据gimix的回答修正了代码,现在代码可正常运行。

import toga
from toga.style import Pack
from toga.style.pack import COLUMN, ROW
class HelloWorld(toga.App):

    def startup(self):   
        main_box = toga.Box(style=Pack(direction=COLUMN))
        record_button = toga.Button("func1",on_press=self.func1,style=Pack(padding=5))
        main_box.add(record_button)

        self.main_window = toga.MainWindow(title=self.formal_name)
        self.main_window.content = main_box

    def func2(self,dialog,result):
        print("callback worked")

    def func1(self,widget):
        self.main_window.confirm_dialog("title", "message",on_result=self.func2)
        return 

def main():
    return HelloWorld()

内容的提问来源于stack exchange,提问作者Ariel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 14:10:15