Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Android Imagelist e resim ekleme,TBitmap
#1
Merhaba

FMX uygulamada aşağıdaki kod windows üzerinde çalışıyor ama android üzerinde çalışmıyor.Aldığım hata:

... exception class segmentetion Fault(11)


Amaç, postgres den resimleri çekip imagelist içine atarak eğitim video 5 1:25 de anlatılanı yapmak.
uygulamayı windows da debug yaparsam sorunsuz çalışıyor. Android de F8 ile uygulamayı çalıştırırsam yukardaki hatayı alıyorum.
F9 ile debug yaparsam hatasız devam ediyor ama resimleri göstermiyor.

Aşağıdaki kod thread içinde çalışıyor ilk açılışta bir defa çalışsın ve açılışı yavaşlatmasın maksadıyla thread içine aldım.

procedure coklu.Execute;
var
ms:TMemoryStream;

Resim:FMX.Graphics.TBitmap;
begin

franaframe.imgGun.PictureList.Clear(true,true);
ms:=TMemoryStream.Create;
resim:= TBitmap.Create();


inherited;
try
try


 datam.uniPostgre.Connected:=True;
 with datam.qrGunler do
  begin
   Close;
   Open;
   First;
   while not (Eof) do
    begin
      TBlobfield(datam.qrgunlerRESIM).SaveToStream(ms);
      ms.Position:=0;
      Resim.LoadFromStream(ms);
      //franaframe.imgGun.PictureList.Add.LoadFromStream(ms); //LoadPictureDownloaded('https://im0-tub-tr.yandex.net/i?id=047812d8478ce00dab013960b0b3eb17&n=13');
      franaframe.imgGun.PictureList.Add.Assign(resim);
      ms.Clear;
      Next;
    end;
  end;

   except on E: Exception do
   ShowMessage(E.Message);
end;
finally
    ms.Free;
    resim.Free;
end;


end;

İyi çalışmalar dilerim.
Cevapla
#2
(29-02-2020, Saat: 10:41)41linea41 Adlı Kullanıcıdan Alıntı: Merhaba

FMX uygulamada aşağıdaki kod windows üzerinde çalışıyor ama android üzerinde çalışmıyor.Aldığım hata:

... exception class segmentetion Fault(11)


Amaç, postgres den resimleri çekip imagelist içine atarak eğitim video 5 1:25 de anlatılanı yapmak.
uygulamayı windows da debug yaparsam sorunsuz çalışıyor. Android de F8 ile uygulamayı çalıştırırsam yukardaki hatayı alıyorum.
F9 ile debug yaparsam hatasız devam ediyor ama resimleri göstermiyor.

Aşağıdaki kod thread içinde çalışıyor ilk açılışta bir defa çalışsın ve açılışı yavaşlatmasın maksadıyla thread içine aldım.

procedure coklu.Execute;
var
ms:TMemoryStream;

Resim:FMX.Graphics.TBitmap;
begin

franaframe.imgGun.PictureList.Clear(true,true);
ms:=TMemoryStream.Create;
resim:= TBitmap.Create();


inherited;
try
try


 datam.uniPostgre.Connected:=True;
 with datam.qrGunler do
  begin
   Close;
   Open;
   First;
   while not (Eof) do
    begin
      TBlobfield(datam.qrgunlerRESIM).SaveToStream(ms);
      ms.Position:=0;
      Resim.LoadFromStream(ms);
      //franaframe.imgGun.PictureList.Add.LoadFromStream(ms); //LoadPictureDownloaded('https://im0-tub-tr.yandex.net/i?id=047812d8478ce00dab013960b0b3eb17&n=13');
      franaframe.imgGun.PictureList.Add.Assign(resim);
      ms.Clear;
      Next;
    end;
  end;

   except on E: Exception do
   ShowMessage(E.Message);
end;
finally
    ms.Free;
    resim.Free;
end;


end;

İyi çalışmalar dilerim.

Sorunu çözemedim. Bilgim, kapasitem yeterli olmadı. Delphican ve stackoverflowdaki örneklerden de sonuç elde edemedim.
Çözüme ulaşmak için strateji değiştirmek zorunda kaldım.
Resimleri webe yükleyip linkleri postgrese kaydettim. Aşağıdaki kod ile de çekiyorum.
Bahse konu ImageList Orange UI TskinImagelist dir. Url özelliği bulunmaktadır.


var

res:TDrawPicture;

try
try


 datam.uniPostgre.Connected:=True;
 with datam.qrGunler do
  begin
   Close;
   Open;
   First;
   while not (Eof) do
    begin
      FRANAFRAME.imgGun.PictureList.BeginUpdate;
      res:=franaframe.imgGun.PictureList.Add;
      //res.LoadFromStream(ms);
      res.Url:=DataM.qrgunleradres.value;
      franaframe.imgGun.PictureList.endUpdate;
      next;
    end;
  end;

   except on E: Exception do
  // ShowMessage(E.Message);
end;
finally

end;
Cevapla
#3
(29-02-2020, Saat: 23:06)41linea41 Adlı Kullanıcıdan Alıntı:
(29-02-2020, Saat: 10:41)41linea41 Adlı Kullanıcıdan Alıntı: Merhaba

FMX uygulamada aşağıdaki kod windows üzerinde çalışıyor ama android üzerinde çalışmıyor.Aldığım hata:

... exception class segmentetion Fault(11)


Amaç, postgres den resimleri çekip imagelist içine atarak eğitim video 5 1:25 de anlatılanı yapmak.
uygulamayı windows da debug yaparsam sorunsuz çalışıyor. Android de F8 ile uygulamayı çalıştırırsam yukardaki hatayı alıyorum.
F9 ile debug yaparsam hatasız devam ediyor ama resimleri göstermiyor.

Aşağıdaki kod thread içinde çalışıyor ilk açılışta bir defa çalışsın ve açılışı yavaşlatmasın maksadıyla thread içine aldım.

procedure coklu.Execute;
var
ms:TMemoryStream;

Resim:FMX.Graphics.TBitmap;
begin

franaframe.imgGun.PictureList.Clear(true,true);
ms:=TMemoryStream.Create;
resim:= TBitmap.Create();


inherited;
try
try


 datam.uniPostgre.Connected:=True;
 with datam.qrGunler do
  begin
   Close;
   Open;
   First;
   while not (Eof) do
    begin
      TBlobfield(datam.qrgunlerRESIM).SaveToStream(ms);
      ms.Position:=0;
      Resim.LoadFromStream(ms);
      //franaframe.imgGun.PictureList.Add.LoadFromStream(ms); //LoadPictureDownloaded('https://im0-tub-tr.yandex.net/i?id=047812d8478ce00dab013960b0b3eb17&n=13');
      franaframe.imgGun.PictureList.Add.Assign(resim);
      ms.Clear;
      Next;
    end;
  end;

   except on E: Exception do
   ShowMessage(E.Message);
end;
finally
    ms.Free;
    resim.Free;
end;


end;

İyi çalışmalar dilerim.

Sorunu çözemedim. Bilgim, kapasitem yeterli olmadı. Delphican ve stackoverflowdaki örneklerden de sonuç elde edemedim.
Çözüme ulaşmak için strateji değiştirmek zorunda kaldım.
Resimleri webe yükleyip linkleri postgrese kaydettim. Aşağıdaki kod ile de çekiyorum.
Bahse konu ImageList Orange UI TskinImagelist dir. Url özelliği bulunmaktadır.


var

res:TDrawPicture;

try
try


 datam.uniPostgre.Connected:=True;
 with datam.qrGunler do
  begin
   Close;
   Open;
   First;
   while not (Eof) do
    begin
      FRANAFRAME.imgGun.PictureList.BeginUpdate;
      res:=franaframe.imgGun.PictureList.Add;
      //res.LoadFromStream(ms);
      res.Url:=DataM.qrgunleradres.value;
      franaframe.imgGun.PictureList.endUpdate;
      next;
    end;
  end;

   except on E: Exception do
  // ShowMessage(E.Message);
end;
finally

end;

Merhaba,
Yapamadığınız bir iş sizi daha doğru bir yönteme sevk etmiş.
Smile
DelphiCan'dır!
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Android Uygulama İkonu ARM 2 400 11-11-2025, Saat: 12:15
Son Yorum: ARM
  Android SDK kajmerantime 1 385 28-10-2025, Saat: 14:53
Son Yorum: cinarbil
  Android El Terminali Barkod Okuyucu Verisi tuna 0 334 17-10-2025, Saat: 01:07
Son Yorum: tuna
  Android işlem öneriliyor uyarısı! Coban 9 1.863 07-08-2025, Saat: 12:07
Son Yorum: RAD Coder
  FMX Android Adaptive Icons kullanabilir miyiz? egeven 1 2.157 30-06-2025, Saat: 21:46
Son Yorum: emozgun



Konuyu Okuyanlar: