Russian Qt Forum

Qt => Вопросы новичков => Тема начата: black_engel от Декабрь 01, 2011, 17:37



Название: Анимированный курсор
Отправлено: black_engel от Декабрь 01, 2011, 17:37
Здравствуйте!

Я хотел бы узнать возможно ли из файла загрузить анимированное изображение (например: gif, png или другие) и установить данную анимацию вместо текущего курсора.
Приведу пример нерабочего кода(в данном случае отображается только 1й кадр):

Код:
int main(int argc, char**argv)
{
     QApplication app(argc, argv);
     QWidget wgt;
     QPixmap pix("clock.png");
     QCursor  cur(pix);
     
      wgt.setCursor(cur);
      wgt.resize(180, 100);
      wgt.show();
}


Название: Re: Анимированный курсор
Отправлено: LisandreL от Декабрь 01, 2011, 18:10
Официально в png нет анимации. APng не был принят разработчиками png.


Название: Re: Анимированный курсор
Отправлено: black_engel от Декабрь 02, 2011, 11:32
Официально в png нет анимации. APng не был принят разработчиками png.

формат файла для отображения анимации можно задать и ГИФ (только от этого курсор все равно не анимированый)


Название: Re: Анимированный курсор
Отправлено: GreatSnake от Декабрь 02, 2011, 11:47
В Qt нет такой поддержки.
Используй platform-specific-API.


Название: Re: Анимированный курсор
Отправлено: Alex Custov от Декабрь 03, 2011, 01:29
анимированные курсоры имеют свой собственный формат, и напрямую загрузить GIF нельзя. Можно руками преобразовать его в формат Xcur (если это для X11), и использовать уже его. В винде формат не помню, кажется .ani.


Название: Re: Анимированный курсор
Отправлено: ufna от Декабрь 03, 2011, 01:49
как костыль - менять курсор по таймеру :)


Название: Re: Анимированный курсор
Отправлено: andrew.k от Декабрь 03, 2011, 02:11
как костыль - менять курсор по таймеру :)
Это не костыль, это инвалидная коляска  :)


Название: Re: Анимированный курсор
Отправлено: ufna от Декабрь 03, 2011, 02:39
Почему же? По сути, в играх так и делается, если дейстовать на низком уровне приложения :)