Показать сообщение отдельно
  #1  
Старый 21.11.2012, 13:46
Аватар для Edinora
Edinora Edinora вне форума
Прохожий
 
Регистрация: 12.11.2012
Сообщения: 22
Репутация: 10
По умолчанию Как проверить? есть ли изображение в ячейке массива TImage?

Добрый день.
Есть динамический массив ІMG. В него записываются картинки с файла. Потом эти же картинки вставляются в таблицу. Но дело в том что у меня скорее всего не все ячейки массива будут заняты, потому перед вставкой мне надо проверить существование картинки.
Подскажите, пожалуйста, как это сделать?

Обявление:
Код:
  public
    { Public declarations } 
     ІMG: Array of TImage;
Заполнение:
Код:
           
if FileExists(fFilePicPath+fFilePicName) then
          begin
            fileNewPicPath:= s+ '/im/';
            fileNewPicName:= edt3.Text+'.bmp';
            CopyFile(pchar(fFilePicPath+fFilePicName), pchar(fileNewPicPath +fileNewPicName),true);            

             IMG[num-1]:= TImage.Create(Self);
             with IMG[num-1] do
              begin
                Parent := Self;
                Width := 50;
                Height := 50;
                Proportional:=true;
                Picture.LoadFromFile(fileNewPicPath +fileNewPicName);
              end;
          end;

И сам вывод в таблицу:
Код:
procedure TForm3._sg1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);

var k,NumTeam:Integer; s:string;
begin        
if (Length(Form1.ImageTeamsArray)<>0) then
  begin
   NumTeam:=length(IMG);
    for k := 1 to _sg1.RowCount do
      begin
         if (Form1.ImageTeamsArray[k-1] = ??????????????????) then
            if ((ACol=1)and(ARow=(k))) then
              begin
                _sg1.Canvas.StretchDraw(Rect, IMG[k-1].Picture.Graphic);
              end;         
      end;
  end;    
end;
__________________
По переживать и по сокрушаться - я всегда успею.
Так что, дайте мне порадоваться в свое удовольствие!
Ответить с цитированием