Tüm Platformlar için Hızlı Uygulama Geliştirme --->    Kitabımız...      Delphi

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 4.33/5 - 3 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Kasmadan resim indirme [ÇÖZÜLDÜ]
#1
İyi akşamlar. Programda kasma yapmadan çok sayıda resim indirmek istiyorum. Listede kanal isimleri var ve küçük resimlerini siteden indiriyor. Aynı resim linki kullandığımda birazcık kasmayla form açıyor ama iş her kanalın kendi resimlerine gelince kapatıyor programı. İndirme için böyle kod parçası yazdım.

function TDM.getImage(url: string): TMemoryStream;
var
 HTTP: TIdHTTP;
 MS: TMemoryStream;
begin
 MS := TMemoryStream.Create;
 HTTP := TIdHTTP.Create(nil);
 try
   HTTP.Get(url, MS);
   MS.Seek(0, soFromBeginning);
   Result := MS;
 finally
   //MS.Free;
   HTTP.Free;
 end;
end;
WWW
Cevapla
#2
Asenkron işlem yaptıramıyor musun firmonkeyde ?
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla
#3
(02-01-2017, Saat: 19:36)yhackup Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlAsenkron işlem yaptıramıyor musun firmonkeyde ?

Merhaba. Bir kere kullanmıştım mobil işin yaptığımda pek performans göremediğimden projeyi java yazdım ve orda picasso kütüphanesi kullandım. Delphi böyle bişey vardır mutlaka ama ben çok uğraşmadım böyle işlerle.
WWW
Cevapla
#4
(02-01-2017, Saat: 19:54)AliZairov Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(02-01-2017, Saat: 19:36)yhackup Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlAsenkron işlem yaptıramıyor musun firmonkeyde ?

Merhaba. Bir kere kullanmıştım mobil işin yaptığımda pek performans göremediğimden projeyi java yazdım ve orda picasso kütüphanesi kullandım. Delphi böyle bişey vardır mutlaka ama ben çok uğraşmadım böyle işlerle.

Ben android uygulamalarımda hep kullanıyorum hemde hemen hemen tüm işlemlerde, işlem yaparken uygulmanın donması hiç hoşuma gitmiyor
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla
#5
(02-01-2017, Saat: 21:23)yhackup Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlBen android uygulamalarımda hep kullanıyorum hemde hemen hemen tüm işlemlerde, işlem yaparken uygulmanın donması hiç hoşuma gitmiyor

Ben resim için kullanmak istiyorum hala uğraşıyorum bakalım ne olacak.
WWW
Cevapla
#6
Selamün Aleyküm;

Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol -> Embarcadero örnek projelerinden olan bu projeyi inceledin mi?
Cevapla
#7
Resimi nereye indirmek istiyorsunuz ? TImage nesnesi içerisine mi yoksa local bir yola mı ?
Yeni Nesil Yazılımcı
Linkedin: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Blog adresim: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
WWW
Cevapla
#8
(03-01-2017, Saat: 09:44)barisatalay Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlResimi nereye indirmek istiyorsunuz ? TImage nesnesi içerisine mi yoksa local bir yola mı ?

Merhaba. Yok Listviewde listeye ekleyeceğim. Kod parçam basit şu an listeye ekleme yaptıkça itemi resminde indiriyo. Qarip bir görüntü oluyor tek-tek listeye ekleniyo.

function TDM.getImage(url: string): TMemoryStream;
var
 MS: TMemoryStream;
 HTTP: THttpClient;
begin
 Application.ProcessMessages;
 MS := TMemoryStream.Create;
 HTTP := THttpClient.Create;
 try
   MS.Seek(0, soFromBeginning);
   HTTP.Get(url, MS);
   Result := MS;
 finally
   HTTP.Free;
   //MS.free;
 end;
end;

   
WWW
Cevapla
#9
Her Item'ın resminin indirilmesi için beklediğinize göre tek tek resimlerin gözükmesi ve ciddi bir yavaşlık oluşması gayet normal.
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol'un dediği gibi asenkron çalışmanız lazım. Bunun için Thread konusunu araştırmalısınız. Ayırca Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol'i inceleyebilirsiniz.

TV logoları sabit olduğuna göre bunları programınızla birlikte, kurulum esnasında dağıtsanız? Sadece yeni kanalların logolarını internetten indirseniz?
There's no place like 127.0.0.1
WWW
Cevapla
#10
(03-01-2017, Saat: 13:14)SimaWB Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlHer Item'ın resminin indirilmesi için beklediğinize göre tek tek resimlerin gözükmesi ve ciddi bir yavaşlık oluşması gayet normal.
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol'un dediği gibi asenkron çalışmanız lazım. Bunun için Thread konusunu araştırmalısınız. Ayırca Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol'i inceleyebilirsiniz.

Merhaba. Asenkron yaptım ama olmadı malesef. Thread bikaç defa uğraştım malesef başarılı olmadım. Kurguda yanlışlık var aslında. Sadece daha uyğun bir yol bulmam gerek. Şöyle nasıl yapa bilirim? Önce listeye eklensin veriler ve resimlerde kendileri yüklensin. Veb olarakta hazırlamıştım orda öyleydi. Mobilde android için picasso kütüphanesi kullanmıştım orda önce lsite sonra sırasıyla resimler indiriliyordu kasmadan.
WWW
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  [ÇÖZÜLDÜ] FMX Servis Kalıcı Olarak Çalıştırma hyperxman 0 96 08-02-2018, Saat: 23:32
Son Yorum: hyperxman
  Edit renklendirilince proje hiç açılmadan kapanıyor[Çözüldü] hakanharbeli 4 154 03-02-2018, Saat: 18:54
Son Yorum: hakanharbeli
  Uygulama linki paylaşma sorunu [ÇÖZÜLDÜ] codder71 2 98 30-01-2018, Saat: 23:38
Son Yorum: codder71
  Listview seçili satır image - Çözüldü serhat 4 139 24-01-2018, Saat: 18:45
Son Yorum: brs
  Resim Silme Paranoyaq 10 273 24-01-2018, Saat: 12:37
Son Yorum: Fesih ARSLAN



Konuyu Okuyanlar: 1 Ziyaretçi