Я читал на форумах Qt, что QFile::exists
можно использовать для проверки существования ресурса изображения.
В моем проекте у меня много изображений, одна из ссылок в файле QML: to:
qrc:/images/ImageViewer/viewer_camera_rear2_off.png
Я проверил в Qt Creator и ресурс присутствует и исправлен, я добавил в C ++ функцию checkImage:
QString Manager::checkPath(QString path) {
bool valid = false;
if ( path.length() > 0 && path.indexOf(".") > 0 ) {
const QString QRCprefix("qrc:");
if ( path.startsWith(QRCprefix) != true ) {
const QString imgsPath("/images/");
if ( path.startsWith(imgsPath) != true ) {
path = imgsPath + path; /*Thank you @WilliamMiller*/
}
path = QRCprefix + path;
}
valid = QFile::exists(path);
}
return (valid == true) ? path : "";
}
Я отлажен это в Qt Creator и QFile::exists
возвращает false, я точно знаю, что изображение и ссылка верны и существуют, так что информация на форуме разработчиков Qt неверна?
Я также пытался изменить QR C префикс к:
qrc:/
qrc://
Результат все тот же QFile :: существующие возвращает false.