Название: gif без проблем Отправлено: darkmacho от Декабрь 04, 2008, 14:43 Можно сделать так что бы QPixmap формат так же выводил gif формат а то с qmovie что то не получается.Для этого нужны плагины? при сборке включил gif
Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 07:03 Что никто не знает?
Название: Re: gif без проблем Отправлено: spirit от Декабрь 05, 2008, 09:39 а что с QMovie не так?
Название: Re: gif без проблем Отправлено: ритт от Декабрь 05, 2008, 11:39 Что никто не знает? мля, ты ещё удивляешься? задавай вопрос так, чтобы он был понятен другим...* формата QPixmap не существует! * как формат может выводить формат? * QMovie отрисовывает гиф с анимацией (покадрово), QPixmap же может содержать только один кадр. а теперь перефразируй - что именно тебе требуется? Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 17:49 Где то я тут видел что можно воспользоваться плагином gif и выводить анимацию с помощью QPixmap.Как это сделать?
Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 20:36 У меня есть нестандартное окно (т.е. картинка) Туда я вывожу png картинки и иногда нужно вместо них проиграть gif картинки как это можно организовать?
Название: Re: gif без проблем Отправлено: spirit от Декабрь 05, 2008, 20:39 Код
Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 20:54 а что ето?
Там же нужно создавать QLabel объекты да? В книге то там главное окно это сам виджет а как здесь быть? Название: Re: gif без проблем Отправлено: spirit от Декабрь 05, 2008, 20:56 Цитировать The QLabel widget provides a text or image display. QLabel (http://doc.trolltech.com/4.4/qlabel.html#details) Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 20:59 у меня там штук 30 картинок я там что щас для каждого эти объекты создать должен?
Название: Re: gif без проблем Отправлено: spirit от Декабрь 05, 2008, 21:16 зачем? лэйбл один, а картинки естественно надо подружать либо через QMovie или QPixmap. в чем собственно проблема?
Код m_label -- член гуевого класса. Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 21:33 я все же не понял QPainter для этого подойдет?
там нет метода setPixmap.А если создать QLabel lbl; там для каждой картинки нужно выполнять lbl.setPixmap(img) выводить все это и каждый раз менять координаты lbl??? Название: Re: gif без проблем Отправлено: spirit от Декабрь 05, 2008, 21:35 блин, что сделать надо-то? нормально вопрос сформировать можно?
Название: Re: gif без проблем Отправлено: pastor от Декабрь 05, 2008, 21:37 Немного вмешаюсь.. Открываем ассистант, смотрим описание QMovie, и видим пример:
Код
Если не получится, выкладывай код Название: Re: gif без проблем Отправлено: pastor от Декабрь 05, 2008, 21:42 А также загляни в QTDIR/examples/widgets/movie/ посмотри\изуче этот пример
Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 21:44 у меня есть :
QPixmap *p[15]; QMovie *pp[15]; В *p -png формат, в *pp - gif формат В начале выводиться весь массив *p как таблица . При нажатии какой-нибудь клавиши мне нужно что бы вместо них появились элементы *pp т.е. проигрывались gif файлы .Вот и все! Название: Re: gif без проблем Отправлено: spirit от Декабрь 05, 2008, 21:46 ну вот размести необходимое кол-во QLabel и сетай в цикле пиксмапы, а потом по нужному событию сетай в этиже QLabel свои QMovie.
Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 21:50 понял все а как изменить координаты лейбла знаю что есть lbl.x и lbl.y как их изменить
Название: Re: gif без проблем Отправлено: pastor от Декабрь 05, 2008, 21:54 Я чего-то непойму. Зачем менять координаты?
1) Размести на виджете 15 QLabel 2) Установи png картинки для них из массива p 3) По нашатию какой либо кнопки, установи gif картинки из массива pp В чем сложность? Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 05, 2008, 21:56 ну вот эти 15 QLabel нужно для каждой свои координаты как их задавать
для QPixmapa же drawPixmap(x,y,img); x,y- координаты.как с лейблом быть то? Название: Re: gif без проблем Отправлено: spirit от Декабрь 05, 2008, 21:59 юзай QGridLayout (http://doc.trolltech.com/4.4/qgridlayout.html)
Название: Re: gif без проблем Отправлено: pastor от Декабрь 05, 2008, 22:00 ну вот эти 15 QLabel нужно для каждой свои координаты как их задавать Для этого нужн открыть книгу (или ассистант) по Qt и почитать про QLayout, QGridLayout, QHBoxLayout, QVBoxLayout etc Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 06, 2008, 12:06 А по проще нельзя а то там щас все менять надо
Название: Re: gif без проблем Отправлено: lit-uriy от Декабрь 06, 2008, 12:55 А по проще нельзя а то там щас все менять надо например как?Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 07, 2008, 23:03 Это же для того что бы когда окно можно было расширать все было на местах, а у меня окно у которого нельзя изменять размеры.И мне не понятно как создавать лейблы без рамки, а то рядом с главным окном появляетя и это лейбл
Название: Re: gif без проблем Отправлено: ритт от Декабрь 08, 2008, 09:36 опять чушь какая-то. давай код...
Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 08, 2008, 12:01 Вот :
Код: #include <qapplication.h> Название: Re: gif без проблем Отправлено: spirit от Декабрь 08, 2008, 12:10 может лучше заюзать QGraphicsView (http://doc.trolltech.com/4.4/qgraphicsview.html) исходя из того, что это попытка создания игры. ;)
Название: Re: gif без проблем Отправлено: ритт от Декабрь 08, 2008, 12:36 ага, ну, понятино чего ты хочешь добиться...
а в чём тогда проблема? рисуй мувик покадрово (так же, как пиксмап, но с постоянным сдвигом на фрэйм) - все необходимые методы QMovie предоставляет. если сам пока не придумал как это будет, советую подсмотреть как реализовано в QLabel. в реализации как у тебя Q*Layout действительно не нужен... Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 08, 2008, 12:46 ??? извините я не понял.Т.е. нужно как-то менять кадр в каждой кратинке что ли и потом показывать там же таймер нужен будет так?
Название: Re: gif без проблем Отправлено: ритт от Декабрь 08, 2008, 13:18 я код QLabel'а пока что поленился ковырять, но предполагаю, что там стартуется таймлайн и на срабатывание инкрементится текущий фрэйм мувика, после чего зовётся апдейт(), а в пэинтИвенте пиксмап текущего фрэйма рисуется на пэинтере с размерами родителя...наверное, примерно так...
в твоём же случае основным отличием будет то, что вместо перехода на следующий фрэйм одного мувика, тебе нужно будет пройтись по массиву и инкрементнуть текущий фрэйм у каждого мувика из массива. ещё раз советую проглядеть код кулабела. Название: Re: gif без проблем Отправлено: darkmacho от Декабрь 08, 2008, 15:48 наверно для такой маленькой игрушки и простые картинки пойдут а то щас нужно с таймером работать и т.д.
Название: Re: gif без проблем Отправлено: ритт от Декабрь 08, 2008, 18:08 с таймлайном - это значительно проще.
|