2013-03-12 3 views
0

У меня есть приложение, которое я разработал с Qt 4.8 (отлично работает), и теперь я пытаюсь перенести его на Qt 5. Я загрузил и установил Qt Creator 2.6.2 (с Qt 5), но у меня есть некоторые проблемы с этим ...Значки приложений не отображаются в Qt 5.0.1

Программа работает и работает, но она не отображает ни одного из ее значков.

У меня есть файл ресурсов с префиксом «/», и я призываю мои ресурсы таким образом, например:

splash->setPixmap(QPixmap(":/images/xml.png")); 

В моей папке отладки proyect У меня есть файл ресурсов (icons.qrc) и в том, что в том же месте папка под названием «изображения».

Это та же самая конфигурация, которая работала с Qt 4.8, но теперь я не могу найти способ сделать значки показывают ...

я что-то не хватает ????

Спасибо.

ответ

0

Необходимо, чтобы ваш файл был зарегистрирован в правом префиксе в вашем файле ресурсов. Папка, в которой файл находится на вашем диске, не имеет значения для загрузки ресурсов в ваш код на C++.

Вы должны создать префикс «изображения» в файле ресурсов (Добавить> Добавить префикс), а затем добавить «xml.png» в качестве файла под этим префиксом. Если вы решили установить псевдоним на файл (например, «xml_img»), ваш ресурс будет загружаемый в вашем коде:

splash->setPixmap(QPixmap(":/images/xml_img")); 
0

У меня была такая же проблема, я портировал из Qt 4.6.2 в Qt 5.6.2 ... Я узнал этот документ: http://doc.qt.io/qt-5/qdir.html#Q_INIT_RESOURCE В соответствии с этим в Qt5 все ресурсы должны быть инициированы.

Итак, это нужно сделать в самом начале. Поэтому ваш файл «main.cpp» должен выглядеть примерно так:

#include "myResource.qrc.cpp" 
void myFunction(){ 
    Q_INIT_RESOURCE(myResource); 
} 

Это, казалось, сработало. Но загляните в документ специально, чтобы убедиться, что это работает для вас.

Смежные вопросы