![]() |
|
![]() ![]() ![]() |
|
yngwie19 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
Здравствуйте вот код:
при создании pwgt2, ему задается фон в виде картинки, однако при компиляции в VS 2008 картинка не появляется. А в QtCreator все нормально, в чем дело? |
|||
|
||||
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Попробуй проделать тоже самое, но вместо .jpg картинки возьми .png. Если получится, значит дело в том, что не находит плагин qjpeg4.dll. Чтобы понять как сделать так, чтобы его находило читай тут.
|
|||
|
||||
yngwie19 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
SABROG, да! с png работает. Однако из этой стать Я так и не понял как сделать чтобы находил плагин qjpeg4.dll.
|
|||
|
||||
SABROG |
|
||||||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Это ж классика ![]() http://www.wiki.crossplatform.ru/index.php...0%B2_MS_Windows Если не хочется ничего лишнего в коде писать, то можно создать папку plugins в папке с программой, создать в ней папку imageformats и скопировать туда нужные .dll файлы (плагины) отсюда: путь_где_стоит_qt\plugins\imageformats\ (вообще структуру путей надо сохранять). Файл qjpegd4.dll для Debug сборки, файл qjpeg4.dll для Release. Если всё-равно не найдет, то создавай файлик qt.config в папке с программой и прописывай в нем это:
Если все-равно не найдется, то можно грохнуть ветку реестра HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults , где записываются неудачные попытки загрузки плагинов и программа больше не пытается их загрузить. Если опять не поможет, то пересобираем свою программу с консолью добавив ключик:
в .pro файл. И выполнив пересборку: qmake, make Затем заходим в консоль (cmd), ставим переменную окружения set QT_DEBUG_PLUGINS=1, запускаем командой свою программу. Если пишется "The plugin плагин.dll' uses incompatible Qt library. (Cannot mix debug and release libraries.)", значит пытаешься загрузить плагин (.dll), который был собран в одном режиме сборки (debug/release), а программа в другом режиме. Если пишет что-то насчет "Thread", например "current thread ... is not the object's thread", значит ты запускаешь программу из консоли, где в переменной PATH указан путь до .dll'ок Qt, при этом они у тебя уже скопированы в папку с твоей программой. В итоге при запуске приложения она цепляет одни .dll'ки, а плагин другие (вернее их же, но с другой папки). А должны оба использовать одну версию, которую загружает программа в момент запуска. И последний, мне известный, вариант, когда не работают плагины. Пишет "Cannot mix debug and release libraries", при этом ты уверен, что сторонний плагин компилировал в release или debug режиме и эти режимы совпадают и у плагина и у приложения. Может возникнуть ситуация, когда Qt думает, что плагин собран в другом режиме. На это влияет ключ -DDEBUG и -DRELEASE при сборке. Если при компиляции плагина он явно не указывается, то Qt не может определить в каком режиме он собран. --- Для статической сборки Qt совсем другая история. Это сообщение отредактировал(а) SABROG - 27.6.2009, 13:40 |
||||||
|
|||||||
yngwie19 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
SABROG, здесь рассказывается как запускать Qt программы на других компьютерах, а меня программа запускается на этом компе на котором пишу, и к тому же библиотека собрана статически.
|
|||
|
||||
SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Тогда тебе еще и сюда.
|
|||
|
||||
yngwie19 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 15.6.2008 Где: Новгород Репутация: нет Всего: нет |
SABROG, спасибо буду пробовать.
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |