![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() есть image к которому идёт обращение из потока для загрузки в него картинки, но если распараллелить процесс то в image постояно грузится новая не ожидаясь не какой реакции
Код:
begin count:=0; FH.get('http://' + FUrl+'/',ss); end; / begin FH.get('http://' + FUrl+'/login.php?r=',S); end; begin If Pos('src="image.php?"', S.datastring) > 0 then try new := TStringList.Create; png := TPNGObject.Create; img.Position:=0; png.LoadFromStream(img); Form2.Image1.Picture.Assign(png); Synchronize(ShowModalForm); code:=Form2.edit1.text; if code <> '' then finally png.Free; img:=nil; inf.Free; end; end; procedure BUX.ShowModalForm; begin Form2.ShowModal; end; unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, ExtCtrls; type TFOR2 = class(TForm) Image1: TImage; Edit1: TEdit; Button2: TButton; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var FOR2: TFOR2; implementation {$R *.dfm} procedure TFOR2.Button1Click(Sender: TObject); begin ModalResult := mrOk; end; end. можно ли поток заставить ждать пока предыдущая картинка не станет nil |
#2
|
|||
|
|||
![]() Мож в проце использовать строчки:
Код:
while img <> nil do Application.ProcessMessages; APPLICATION.TERMINATOR |
#3
|
||||
|
||||
![]() Лучше Application.HandleMessage.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#4
|
|||
|
|||
![]() примера не нада, разобрался, вопрос снят слава богу
![]() Последний раз редактировалось bulldog, 24.01.2011 в 23:20. |