![]()  | 
	
 
  | 
		
			
  | 	
	
	
		
		|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
![]()  | 
	
	
| 
		 | 
	Опции темы | Поиск в этой теме | Опции просмотра | 
| 
		 
			 
			#16  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 А я не вижу инициализацию ImageSrav[nnn] 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#17  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Для шаблонов она происходит при создании формы,  
		
	
		
		
		
		
		
	
		
		
	
	
	Код: 
	procedure TForm1.FormCreate(Sender: TObject);
var
  SkinsPath,ThemeName:String;
  SearchRec:TSearchRec;
  AppIni:TIniFile;
    iz: Integer;
begin
sComboBox3.Clear;
SkinsPath:=extractfilepath(Application.ExeName)+'Profile\';
if FindFirst(SkinsPath+'*.txt',faAnyFile,SearchRec) =0 then
begin
sComboBox3.Items.Add(Copy(SearchRec.Name,0,pos('.',SearchRec.Name)-1));
while (FindNext(SearchRec) = 0) do begin
sComboBox3.Items.Add(Copy(SearchRec.Name,0,pos('.',SearchRec.Name)-1));
end;
end;
AppIni:=TIniFile.Create(extractfilepath(Application.ExeName)+'Options.ini');
AppIni.Free;
for iz := 3 to 52 do begin
 ImageSrav[iz]:=TBitmap.Create;
 ImageSrav[iz].Height:=TImage(Form1.FindComponent('Image'+IntToStr(iz))).Picture.Height;
 ImageSrav[iz].Width:=TImage(Form1.FindComponent('Image'+IntToStr(iz))).Picture.Width;
 ImageSrav[iz]:=TImage(Form1.FindComponent('Image'+IntToStr(iz))).Picture.Bitmap;
end;
end;Код: 
	procedure TForm1.sButton7Click(Sender: TObject);
begin
sEdit2.Clear;
 ImageSrav[53]:=TBitmap.Create;
 ImageSrav[53]:=TImage(Form1.FindComponent('Image'+IntToStr(2))).Picture.Bitmap;  
Capth:=TCapth.Create(false);
capth.FreeOnTerminate:=true;
end; | 
| 
		 
			 
			#18  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Вот нашёл пример сборки, где в потоке идёт обработка картинки с выводом окончательных результатов. 
		
	
		
		
			 | 
| Этот пользователь сказал Спасибо Alegun за это полезное сообщение: | ||
 
ProDaNTe (24.04.2013)
  | ||
| 
		 
			 
			#19  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Цитата: 
	
 Alegun ещё раз тебе огроменное спасибо и всем кто сталкнулся с такой проблемой вот ответ! Что бы в потоке 2 разные задачи не конфликтовали при одновременной работе с Canvas или даже при любых обращениях к Canvas из потока, используются методы Lock и unLock !!!  | 
| 
		 
			 
			#20  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Lock/Unlock надо в try finally блоке выполнять (ну это если по хорошему). 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 |