![]()  | 
	
 
  | 
| 
	 | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 всем добрый день!! 
		
	
		
		
		
		
		
		
			при вот-таком-вот коде Код: 
	for i2:=1 to 500 do
for i1:=1 to 500 do
begin
   map[i1,i2].pict:=Tbitmap.Create;
   map[i1,i2].pict.width:=35;
   map[i1,i2].pict.height:=35;
   map[i1,i2].pict.LoadFromFile('1.bmp');
   form1.Canvas.Draw(i1*35-35,i2*35-35,map[i1,i2].pict);
end;программа не работает. почему? покажыте пример как можно создать спомогательный буфер на картинку 35х35 который закрасит большую картинку (другой bitmap) своими копиями. и что такое 'Чрезмерное использование верхнего регистра' ,как этого этого не делать? Последний раз редактировалось di_jus, 02.07.2009 в 21:37.  | 
| 
		 
			 
			#2  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Код: 
	var
  bmp: TBitmap;
  i, j: Integer;
begin
  bmp := TBitmap.Create;
  try
    bmp.LoadFromFile('1.bmp');
    for i := 0 to Width div bmp.Width do
      for j := 0 to Height div bmp.Height do
        Canvas.Draw(i * bmp.Width, j * bmp.Height, bmp);
  finally
    bmp.Free;
  end;
end; | 
| 
		 
			 
			#3  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 спасибо,вот только обясните для чего 
		
	
		
		
		
		
		
	
		
		
	
	
	Код: 
	bmp.free  | 
| 
		 
			 
			#4  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Цитата: 
	
  | 
| 
		 
			 
			#5  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 а какая тут ошыбка ? 
		
	
		
		
		
		
		
	
		
		
	
	
	Код: 
	procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
 begin
  if key=('w') then
  nx:=nx+1;
 end; | 
| 
		 
			 
			#6  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Правильней: 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	Код: 
	procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=Ord('w') then
  nx:=nx+1;
end;Цитата: 
	
  |