Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2015.02.22;
Скачать: CL | DM;

Вниз

Мерцание TImage при Gif-анимации   Найти похожие ветки 

 
Jimmy   (2014-01-17 20:50) [0]

Добрый день!
При проигрывании Gif-анимации в обычном Image на Delphi XE5 появляются мерцания. Подскажите, как этого избежать?
Раньше использовал RxGifAnimator, проблем не было, да и возможностей управления анимационными гифами было больше. Если же сейчас форме придать DoubleBuffered:=True, то мерцания у анимационного Gif"а исчезают, но фон собственной кнопки перестает быть прозрачным. Почитал, что при DoubleBuffered:=True могут быть проблемы с прорисовкой и других контролов. Если самое простое решение проблемы мерцания все-таки DoubleBuffered:=True, то как решить проблемы потери прозрачности? Или может посоветуете сторонний компонент для проигрывания Gif-анимации для Delphi XE5?
Заранее огромное спасибо!


 
Лакримакристи   (2014-01-19 03:05) [1]


> При проигрывании Gif-анимации в обычном Image на Delphi XE5


Проигрывании каким образом? Что используется-то? Что-то встроенное в XE5 или чего?


> но фон собственной кнопки перестает быть прозрачным


Это чего такое? Подробнее?


 
Jimmy   (2014-01-19 09:12) [2]

Проигрываю Gif так:
procedure TFormCount.FormShow(Sender: TObject);
Var G: TGIFImage;
   Stream: TCustomMemoryStream;
begin
G:=TGIFImage.Create;
Stream := TResourceStream.Create(hInstance,"GGenCount","GIF");
G.LoadFromStream(Stream);
Stream.Free;
G.Animate:=True;
G.Transparent:=True;
Image1.Picture.Assign(G);
G.Free;
Image1.Visible:=True;
end;

Собственная кнопка - собственный компонент, сделанный на основе TBitBtn. Так вот если сделать у родительской формы DoubleBuffered:=True, то даже если в
procedure TMyButton.DrawButton(Rect: TRect; State: UINT);
ничего не рисовать вообще - область этой кнопки закрашивается.


 
Лакримакристи   (2014-01-19 17:12) [3]

Установил чистенький XE5 - и оно понятия не имеет что есть TGIFImage.
Засунул модуль в папки debug/release - запустилось. Без мерцаний. Конечно у меня своя gif, может у вас что-то очень быстрое и огромное там...
Добавление DoubleBuffered:=True; ничего не испортило. Может что-то не так с кнопкой?



Страницы: 1 вся ветка

Текущий архив: 2015.02.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.005 c
11-1257949541
RusSun
2009-11-11 17:25
2015.02.22
минимизация окна


11-1257358925
stas
2009-11-04 21:22
2015.02.22
KOL отправка почты


15-1405542603
Юрий
2014-07-17 00:30
2015.02.22
С днем рождения ! 17 июля 2014 четверг


2-1388413324
Signal
2013-12-30 18:22
2015.02.22
как на Bitmap наложить второй bitmap в заданные координаты?


2-1390291002
AlexDn
2014-01-21 11:56
2015.02.22
Запуск странички