Здравствуйте, гость ( Вход | Регистрация )
Rocky | Дата 15.3.2010, 9:39 |
SABROG, спасибо но там точно баги. Я гуглил. Чтобы не тратить время просто свой класс написал на основе QLabel которому последовательность картинок передаю.. | |
SABROG | Дата 11.3.2010, 10:03 |
Выложи проект, посмотрю. | |
Rocky | Дата 11.3.2010, 8:28 |
SABROG, я так пробовал... frameCount всегда возвращает 0. в слоте, соединенном с сигналом frameChanged параметр frameNumber всегда 0. Более того, если этот сигнал соединять, то вообще срывает стэк почемуто =) Боюсь что поддержки гифоф так и нет... Ладно, напишу свой класс, которому буду просто кормить последовательность картинок... |
|
SABROG | Дата 10.3.2010, 23:42 |
Узнай количество фреймов: int QMovie::frameCount () const и лови сигнал: void QMovie::frameChanged ( int frameNumber ) [signal] В слоте проверяй если frameNumber == frameCount(), то вызывай stop(): QTimer::singleShot(0, movie, SLOT(stop()); Чтобы movie успел проиграть последний фрейм и только после этого остановился. А finished() наверно никогда не придет, если в gif'ке стоит свойство играть по кругу. Если даже frameCount() не будет работать, то максимальное количество фреймов всегда можно обновить в слоте на frameChanged() и если новое значение меньше старого, значит пошел второй круг. |
|
kwisp | Дата 10.3.2010, 21:58 |
не делал. посмотри баги может они так и остались. |
|
Rocky | Дата 10.3.2010, 21:28 |
Ребят а с тех пор никто с гифками не работал? У меня щас 4.6.1.... а по ходу все тоже самое.. ( Как можно остановить анимацию когда последний кадр? я делал через QMovie... Походу сигнал finished не генерируется... А гифка так вечно и проигрывается, а нужно чтоб она один раз проиграла, и все... Блин( | |
kwisp | Дата 29.5.2009, 16:03 |
я бы сказал для гифа точно в классе QGifHandler не перепопределены толком виртуальные функции предка QImageIOHandler в остальных лень смотреть кому интересно в src/plugins/imageformats/ лежат дочерние классы в src\gui\image\ родитель QImageIOHandler У QMovie loopCount () & frameCount () возвращают -1 странно в исходниках они вроде переопределены по своему .... хм.. ну да черт с ними точно. потому что посмотрел я на баги.... многовато их... надо почаще туда лазить а то так голову поломать можно. P.S. кошара зачётная. почитай там в юморе в непридуманных историях есть про кота как раз рассказик. |
|
igor_bogomolov | Дата 29.5.2009, 15:58 |
kwisp, я переделал все на QMovie. Тож же самый функционал, потяжеловеснее только. Хотелось бы QImageReader обойтись. Да ну и черт с ним. У QMovie loopCount () & frameCount () возвращают -1. Зато работает jumpToFrame и nextFrameDelaу. Цитата(kwisp) мда.... сразу мона было позырить сюда Бага то старинная и приоритет высокий. Странно что до сих пор не пофиксили. |
|
Litkevich Yuriy | Дата 29.5.2009, 15:57 |
мда.... сразу мона было позырить походу надо запостить в трекер более явно, что мол реализация отсутствует.Т.к. запланировано на 4.1, может уже забыли. |
|
kwisp | Дата 29.5.2009, 15:41 |
нашел где переопределяют imageCount похоже либо бага либо недоделка либо я накосячил.
таж фигня вид сбоку и функция не виртуальная. мда.... сразу мона было позырить сюда там вообще не только одна функция непереопределена штук 5 недоделаны. |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 29.3.2024, 17:09 |