Как я могу загрузить изображение в QPixmap без указания полного пути?

#c #qt #qt-creator #qtwidgets

#c #qt #qt-creator #qtwidgets

Вопрос:

Я использую Qt Creator в Windows и пытаюсь добавить изображение к значку.

Единственный способ заставить его работать — указать полный путь:

 QPixmap newIcon("C:/Users/slipn/Documents/qt/projetos/exemplo/new.png");
newToolBarAction = toolbar->addAction(QIcon(newIcon), "New File");
 

Я попытался добавить в проект, как показано ниже:

введите описание изображения здесь

Файлы изображения и кода находятся в одном каталоге. Я понятия не имею, какой путь я должен использовать, чтобы заставить его работать. Какие-либо подсказки?

Комментарии:

1. Проекты -> Выполнить -> Рабочий каталог:

2. О, большое спасибо.. Я попробовал эту папку, но я пошел дальше в папку отладки, где создавался исполняемый файл… Теперь это работает! =)

3. @eyllanesc Я новичок в qt и никогда не использовал базы данных на языке программирования, я пытаюсь следовать инструкциям из книги и все еще не могу разобраться с некоторыми настройками … спасибо за помощь, я знаю, это может показаться глупым вопросом, но что мне нужно делать с этим файлом изgithub? вставить куда? как выполнить?

4. @vmp Нет, вы просто выполняете шаги. Откройте cmd и запустите эти команды, очевидно, изменяя пути к файлам для вашего случая.

Ответ №1:

Проблема, которую вам нужно решить, заключается в том, что ваш исходный путь и путь, по которому вы создаете или, возможно, позже даже устанавливаете свое приложение, не совпадают. Вам необходимо связать свой ресурс изображения с вашим приложением, либо скопировав и установив его в свою сборку / установку, либо включив его непосредственно в двоичный файл вашего приложения.

Последнее — ваш самый простой выбор с qmake. Установка файлов с помощью qmake (относительно) проста, но заставить результат сборки работать без отдельного make install шага — это совсем другое.

Самый простой способ решить как «прямой запуск результата сборки», так и «запуск установленного приложения» — использовать систему ресурсов Qt.

Создайте .qrc файл с помощью File> New File> Files and Classes> Qt> Qt Resource File , добавьте «префикс» (некоторое имя), добавьте туда свой файл изображения, а затем используйте QPixmap newIcon(":/yourprefix/new.png") для доступа к нему в своем приложении.