У меня есть лист, объявленный в моем файле QML, который имеет идентификатор "заставка"
Когда мое приложение выполняет задачу, требующую больших вычислительных ресурсов, я испускаю сигнал 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();
}
и оба эти журнала появляются в консоли.
_encryptedattachment.working.connect(showSplash);
вернул истину? вы уверены, что showSplash не называется? Если вызывается showSplash, вызываете ли выQApplication::processEvents
после вызова show на экземпляре QSplashScreen? - person Kamil Klimek   schedule 15.07.2013