我在我的 QML 文件中声明了一张工作表,其 ID 为“splashscreen”
当我的应用程序执行计算密集型任务时,我会发出 working() 信号。
我将此代码附加到我的 QML 文件的主要元素中:
onCreationCompleted: {
_encryptedattachment.finished.connect(splashscreen.close);
_encryptedattachment.working.connect(splashscreen.open);
console.log("connected");
}
如果我通过调用需要解密的文件打开应用程序,
_encryptedattachment.working.connect(splashscreen.open);
不打开启动画面,即使事件被触发(我在调试器中检查了代码
emit working()
被执行。
编辑:
我将 onCreated 代码更改为:
onCreationCompleted: {
splashscreen.open();
_encryptedattachment.working.connect(showSplash);
_encryptedattachment.finished.connect(hideSplash);
console.log("connected");
}
function showSplash() {
console.log("open splashscreen");
splashscreen.open();
}
function hideSplash() {
console.log("close splashscreen");
splashscreen.close();
}
并且这两个日志都出现在控制台中。