Как вставить изображения в QListWidget? - PullRequest
2 голосов
/ 09 февраля 2010

Я новичок в QT, столкнулся с некоторыми проблемами при вставке изображений в список. Это мой текущий код:

int main(int argc, char *argv[]) 
{
    QApplication a(argc, argv);

    QListWidget* list = new QListWidget();
    QListWidgetItem *item1 = new QListWidgetItem(QIcon(":\temp\boat.png"), "BlueHills", list);
    list->insertItem(0, item1);
    QListWidgetItem *item2 = new QListWidgetItem(QIcon("C:\\Documents and Settings\\admin\\Desktop\\icons\\car.png"), "Sunset", list);

    list->show();
}

Проблема в том, что отображается только текст.

Как вставить изображение1

как вставить изображение2

1 Ответ

1 голос
/ 09 февраля 2010

Я взял ваш код и вставил его в совершенно новый проект QtCreator, и он работает. Я бы посоветовал вам еще раз проверить пути ваших изображений.

Путь к изображению вашего первого элемента должен быть ": /temp/boat.png". Убедитесь, что ваше изображение четко определено в вашем файле ресурсов. Поэтому я бы посоветовал вам протестировать изображение, расположенное в корне C, например "C://mypic.png".

Вы можете добавить файл ресурса из QtCreator, используя диалог Новый файл или Проект . Файл Qt Resource находится в Файлы и классы -> Qt

Полученный файл может выглядеть примерно так:

<RCC>
    <qresource prefix="images_section">
        <file alias="MyBoatImage">boat.png</file>
    </qresource>
</RCC>

Если вы решите записать его, вам нужно добавить его .pro-файл следующим образом:

RESOURCES += resource.qrc

Каким бы способом вы ни создавали файл ресурсов, вы можете получить к нему доступ через что-то вроде: ":/images_section/MyBoatImage"

...