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

Вниз

Как в перемен. типа PGif загрузить из перемен. типа TStringStream   Найти похожие ветки 

 
Vinum   (2007-12-07 22:11) [0]

Чтоб потом эта PGIF анимировалась
Помогите кто чем может :)


 
Dimaxx ©   (2007-12-08 16:04) [1]

Причем здесь StringStream и GIF??


 
Vinum   (2007-12-08 18:32) [2]

В общем дело так: смысл программы, к-ю я пишу, в том, что из ZIP архива, в котором находятся GIF файлы, при помощи либы SciZipFile by Patrik Spanel я эти самые файлы хочу "извлекать" и при помощи KOLGIF анимировать. На сайте по KOL нашел пример с использованием KOLGIF, в SciZipFile тоже был пример, но там был пример с отображением из архива простых BMP. Я попытался сделать аналогичное, но когда в архиве были GIF файлы, и вот возникла заморочка, прилагаю кусок кода из примера SciZipFile:

var
 StrStream : TStringStream ;
 ABitmap   : TBitmap ;

...
{ Convert string to stream }
 StrStream := TStringStream.Create(ZipFileMem.Data[ListBox1.ItemIndex]) ;
.....
 { Assign bitmap }
 ABitmap := TBitmap.Create ;
 ABitmap.LoadFromStream (StrStream) ;


и все прекрасно работает :)
Вопрос тогда по-другому задам: как мне получив StrStream GIF файла прокрутить его при помощи KOLGIF


 
ANTPro ©   (2007-12-08 19:04) [3]

> [2] Vinum   (08.12.07 18:32)

В VCL есть свой PGif


 
Vinum   (2007-12-08 19:34) [4]

> ANTPro  (08.12.07 19:04)

Какой? Где? в D6 он есть?
сорри за такой тупой вопрос :)


 
Дмитрий К ©   (2007-12-08 22:23) [5]

В вкл гифа нет.
По сабжу:
unit Unit1;
...
implementation
{$R *.dfm}
uses KOL, KOLGif;

var
 GifShow: PGifShow;
 KolForm: PControl;
 KolStream: PStream;

procedure TForm1.Button1Click(Sender: TObject);
begin
 KolStream := NewMemoryStream;
 KolStream.Write(Pointer(StrStream.DataString)^, Length(StrStream.DataString));
 KolForm := NewForm(nil,"");
 KolForm.HasBorder := False;
 GifShow := NewGifShow(KolForm);
 KolStream.Position := 0;
 GifShow.LoadFromStream(KolStream);
 GifShow.ResizeParent;
 Windows.SetParent(KolForm.Handle, Self.Handle);
 KolForm.Show;
 KolStream.Free;
 (Sender as TButton).Enabled := False;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 KolForm.Free;
 Button1.Enabled := True;
end;

end.


 
ANTPro ©   (2007-12-08 23:40) [6]

> [5] Дмитрий К ©   (08.12.07 22:23)
> В вкл гифа нет.

В JVCL много чего есть.


> [5] Дмитрий К ©   (08.12.07 22:23)
> KolStream: PStream;

Интересно что будет если PStream заменить на TStringStream :)


 
Дмитрий К ©   (2007-12-08 23:56) [7]


> В JVCL много чего есть.

JVCL не входит в "стандартную комплектацию".
Правда в Delphi 2007 gif есть.


> Интересно что будет если PStream заменить на TStringStream :)

Это риторический вопрос?


 
ANTPro ©   (2007-12-09 00:17) [8]

> [7] Дмитрий К ©   (08.12.07 23:56)
> JVCL не входит в «стандартную комплектацию».

KOL тоже :)


> [7] Дмитрий К ©   (08.12.07 23:56)
> Это риторический вопрос?

Это не вопрос :o)


 
Дмитрий К ©   (2007-12-09 00:19) [9]

Сдаюсь :)



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

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

Наверх




Память: 0.49 MB
Время: 0.013 c
2-1229425819
Artem
2008-12-16 14:10
2009.02.01
Объектные переменные


3-1213899571
SuperChel
2008-06-19 22:19
2009.02.01
Запрос на SQL для выборки иерархического списка


2-1229811012
kritika
2008-12-21 01:10
2009.02.01
очереди, стеки, деревья


15-1228561459
oxffff
2008-12-06 14:04
2009.02.01
У меня родился сын! Спешу вам сообщить друзья


15-1228576006
Artem
2008-12-06 18:06
2009.02.01
Литература COM в Delphi