Python EEL:在脚本期间更改按钮标签 运行

Python EEL: Changing button label during script running

我有一个脚本可以将来自不同目录的一堆文件编译成一个 xlsx sheet。 我正在为它创建一个前端,以便与我的同事共享它,虽然我在我的代码中有打印语句,但我想要一些关于我的 GUI 的反馈。

我需要在代码执行期间更改标签的按钮,这是我尝试过的:

function getstarted(){
    document.getElementById("buttonstart").value="Running...";
    eel.myfunc();
    document.getElementById("buttonstart").value="Done!";
}

这当然是行不通的,因为 javascript 没有等待我的 eel 函数完成处理以再次更改值。 有任何想法吗? 提前致谢

如果你让函数异步,你可以要求等待Eel的响应。

async function getstarted(){
    document.getElementById("buttonstart").value="Running...";
    await eel.myfunc()();
    document.getElementById("buttonstart").value="Done!";
}

如果您不想使用异步方法,另一种选择是将之后运行的代码放入 Eel 完成时调用的另一个方法。

function getstarted() {
    document.getElementById("buttonstart").value="Running...";
    eel.myfunc()(getstarted2);
}

function getstarted2() {
    document.getElementById("buttonstart").value="Done!";
}