Название: Макс Шлее примеры Отправлено: gelonis от Апрель 08, 2010, 21:34 Помогите разобраться уже второй пример не могу заставить нормально работать. Пример с изменением курсора
Код: #include <QtGui> Запускаю в Qt creator, окно запускается но курсор не меняется. QCursor: Cannot create bitmap cursor; invalid bitmap(s) В предыдущем примере та же история. Код: pal2.setBrush(pwgt2->backgroundRole(), QBrush(QPixmap("stone.jpg"))); файлы рисунков находятся в каталогах с исполняемым файлом Название: Re: Макс Шлее примеры Отправлено: KuZ от Апрель 08, 2010, 21:56 Скорей все таки не там лежит сам файл или не правильно назвал. все работает нормально.
Название: Re: Макс Шлее примеры Отправлено: lit-uriy от Апрель 08, 2010, 22:13 gelonis, ты случаем не на линухе?
Название: Re: Макс Шлее примеры Отправлено: shirushizo от Апрель 09, 2010, 06:12 Если непринципиально, лучше всего создать ресурс и пользовать, тогда и битмапы таскать не придеться.
Если нет, попробуй другие файл подкладывать (для начала *.png), вдруг плагины косячят (imageformats которые) Название: Re: Макс Шлее примеры Отправлено: gelonis от Апрель 09, 2010, 08:01 Windows, файлы лежат там где и .exe скопировал туда и плагины \plugins\imageformats\
Код: app.addLibraryPath(app.applicationDirPath() + "/plugins/"); Кстати пробовал указывать заведомо неправильное имя файла,доп ошибок не показывает это так должно быть? Создам ресурс, проверю. Название: Re: Макс Шлее примеры Отправлено: gelonis от Апрель 09, 2010, 09:10 С ресурсом работают оба примера!!!
Название: Re: Макс Шлее примеры Отправлено: lit-uriy от Апрель 09, 2010, 16:02 ты проверь, какой файл пытается загрузить приложение:
qDebug() << "File location:" << QFileInfo("clock.png").absoluteFilePath(); Название: Re: Макс Шлее примеры Отправлено: gelonis от Апрель 09, 2010, 17:17 File location: "D:/Programmer/C++/qt_books/exem/Examples/chapter05/MouseCursor/debug/clock.png"
Файл находится: "D:/Programmer/C++/qt_books/exem/Examples/chapter05/MouseCursor/clock.png" Почему так? Положил его в /debug/ все работает. Должен искать в корне каталога или нет? Название: Re: Макс Шлее примеры Отправлено: lit-uriy от Апрель 09, 2010, 20:10 >>Должен искать в корне каталога или нет?
Где написал, там и должен искать. Если написал "stone.jpg", то будет искать в текущем каталоге приложения, а он может изменятся, например явной установкой QDir::setCurrentPath, или извне, например, создав ярлык к программе и задав в нём поле "рабочий каталог". Название: Re: Макс Шлее примеры Отправлено: lit-uriy от Апрель 09, 2010, 20:11 >>файлы рисунков находятся в каталогах с исполняемым файлом
как видишь, ты даже дезинформировал форумчан. Т.к. исполняемый файл лежит совсем не там, где лежит файл с картинкой Название: Re: Макс Шлее примеры Отправлено: gelonis от Апрель 10, 2010, 11:22 Я думал исполняемый файл имеет расширение .exe.
Название: Re: Макс Шлее примеры Отправлено: lit-uriy от Апрель 10, 2010, 12:27 >>Я думал исполняемый файл имеет расширение .exe.
на виндовозе так и есть Название: Re: Макс Шлее примеры Отправлено: gelonis от Апрель 10, 2010, 13:01 File location: "D:/Programmer/C++/qt_books/exem/Examples/chapter05/MouseCursor/debug/clock.png" Файл находится: "D:/Programmer/C++/qt_books/exem/Examples/chapter05/MouseCursor/clock.png" Почему так? Положил его в /debug/ все работает. Должен искать в корне каталога или нет? Так у меня ехе находится в "D:/Programmer/C++/qt_books/exem/Examples/chapter05/MouseCursor/" а в "D:/Programmer/C++/qt_books/exem/Examples/chapter05/MouseCursor/debug/ объектные файлы, после записи "clock.png" в каком каталоге должен происходить поиск, те какой является корнем? Название: Re: Макс Шлее примеры Отправлено: lit-uriy от Апрель 10, 2010, 13:48 В таком случае нужно выяснить, почему у тебя меняется текущий каталог приложения.
Ты приложение как запускаешь? Из командной строки, файлового менеджера или как-то ещё? Название: Re: Макс Шлее примеры Отправлено: gelonis от Апрель 10, 2010, 14:04 Запускаю в Qt creator
Название: Re: Макс Шлее примеры Отправлено: shirushizo от Апрель 10, 2010, 15:39 Qt Creator создает exe-файлы в папках debug/release, относительный путь указывается от нее. Если QDir::setCurrentPath() непользовал, то туда и кидай.
|