ImageListe urlden images alma

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
dogan
Üye
Mesajlar: 173
Kayıt: 17 Eki 2014 10:11

ImageListe urlden images alma

Mesaj gönderen dogan »

Merhaba,

İmageListe normal şartlarda bilgisayardaki bir resim yolunu göstererek imageListe ekleme yapabiliyorum, bu işlemi link yolunu (http://www.xxxx.xxxx/images/6.bmp') jpg, bmp ve png dahil olmak üzere nasıl yapabilirim?

Bilgisayar:

Kod: Tümünü seç

procedure TForm1.Button2Click(Sender: TObject);
var
  B: TBitmap;
begin
  B := TBitmap.Create;
  B.LoadFromFile('C:\Yeni klasör\6.bmp');
  ImageList1.Add(B, nil);
  B.Free;
  ImageList1.GetIcon(0, Image1.Picture.Icon);
end;
web:

Kod: Tümünü seç

procedure TForm1.Button2Click(Sender: TObject);
var
  B: TBitmap;
begin
  B := TBitmap.Create;
  B.LoadFromFile('http://www.xxxx.xxxx/images/6.bmp');
  ImageList1.Add(B, nil);
  B.Free;
  ImageList1.GetIcon(0, Image1.Picture.Icon);
end;
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: ImageListe urlden images alma

Mesaj gönderen mrmarman »

Bu linkteki örnek istediğin şeyi yapıyor.
Resim
Resim ....Resim
Kullanıcı avatarı
dogan
Üye
Mesajlar: 173
Kayıt: 17 Eki 2014 10:11

Re: ImageListe urlden images alma

Mesaj gönderen dogan »

mrmarman yazdı:Bu linkteki örnek istediğin şeyi yapıyor.

Hocam ilginize teşekkürler, vermiş olduğunuz link ve bir çok konu inceledim ( LoadFromFile('C:\Yeni klasör\6.bmp'); )
gibi daha basit bir uygulama, yapmak mümkün değil mi? ben sadece belirtilen urlden ImageList te icon almak istiyorum :mrgreen:
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: ImageListe urlden images alma

Mesaj gönderen mrmarman »

Bu kadar kolaycı olma hocam ya...
al bu procedure JPG ve BMP ise işini görecektir.

Kod: Tümünü seç

Uses JPEG, IdHttp;

procedure UrldenImageListeYukle( strUrl: String; ImageList:TImageList );
Var
  JPG: TJpegImage;
  BMP: TBitmap;
  MS : TMemoryStream;
begin
    JPG := TJPEGImage.Create;
    BMP := TBitmap.Create;
    MS  := TMemoryStream.Create;
    With TIdHttp.Create(nil) do
    begin
      Get( strUrl, MS );
      Free;
    end;
    Try
      MS.Seek(0,soFromBeginning);
      JPG.LoadFromStream(MS);
      BMP.Assign( JPG );
      if (ImageList.Width  < BMP.Width)  then ImageList.Width  := BMP.Width;
      if (ImageList.Height < BMP.Height) then ImageList.Height := BMP.Height;
      Imagelist.Addmasked(BMP, clNone);
    Except
      // Bitmap olmalı...
      Try
        MS.Seek(0,soFromBeginning);
        BMP.LoadFromStream(MS);
        if (ImageList.Width  < BMP.Width)  then ImageList.Width  := BMP.Width;
        if (ImageList.Height < BMP.Height) then ImageList.Height := BMP.Height;
        Imagelist.Addmasked(BMP, clNone);
      except
        MessageDlg('Dosya biçimi JPG veya BMP değil...', mtError, [mbCancel], 0 );
      end;
    End;
    MS.Free;
    BMP.Free;
    JPG.Free;
end;
Kullanımı

Kod: Tümünü seç

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
// JPG örneği
  UrldenImageListeYukle( 'http://www.delphiturkiye.com/forum/download/file.php?avatar=7845_1404638054.jpg', ImageList1 );
  ImageList1.Draw( Image1.Canvas, 0,0, ImageList1.Count-1 );
  
// BMP örneği
  UrldenImageListeYukle( 'http://boinc.berkeley.edu/logo/boinc16.bmp', ImageList1 );
  ImageList1.Draw( Image1.Canvas, 0,0, ImageList1.Count-1 );
end;
Resim
Resim ....Resim
Kullanıcı avatarı
dogan
Üye
Mesajlar: 173
Kayıt: 17 Eki 2014 10:11

Re: ImageListe urlden images alma

Mesaj gönderen dogan »

mrmarman yazdı:Bu kadar kolaycı olma hocam ya...

Teşekkür ederim dün sabah saat 5 kadar uğraştım ve bitirdim, forumda da konuyu çözüldü olarak yapma şansımız olmadığı için dönüş yapamadım...
Cevapla