Kod: Tümünü seç
procedure TFormArsiv.Label47Click(Sender: TObject);
begin
if fileexists(dm1.DosyaYoluIBDataSet.fieldbyname('FOTO_YOLU').AsString+dm1.ArsivIBDataSet.fieldbyname('CERAIMNO').AsString+'.jpg') then
begin
image1.Picture.LoadFromFile(dm1.DosyaYoluIBDataSet.fieldbyname('FOTO_YOLU').AsString+dm1.ArsivIBDataSet.fieldbyname('CERAIMNO').AsString+'.jpg');
label47.Visible:=false;
end
else
begin
if not fileexists(dm1.DosyaYoluIBDataSet.fieldbyname('FOTO_YOLU').AsString+dm1.ArsivIBDataSet.fieldbyname('CERAIMNO').AsString+'.jpg') then
showmessage('"'+dm1.arsivibdataset.fieldbyname('CERAIMNO').AsString+
'"'#13'Ceraim Numaralı Şahsın'#13'Fotoğrafı Kayıtlarda Yok');
label47.Visible:=true;
end;
150 000 kayıtlık bir veritabanında yaklaşık 50000 resim yükleyeceğiz. 200 veya 400 kb. olduğu düşünülerek yapılan hesap sonucunda yaklaşık 20 gb lik bir büyüklük yapıyor. windowsun dosya boyut sınırı buna yetmiyor. bu sebeple program klasörü içinde oluşturulan foto klasöründe resimleri saklayacağım. benden istenen yaş aralığında çıkan sonuçta dönen kayıtların fotoğraflarını slayt olarak gösterilmesi. bu 3-4 bin kayıt ta olabilir, daha az veya çokta olabilir.
-yukarıdaki bir uygulamada fotoğrafların gösteriminde windows yönünden veya program yönünden sıkıntı yaşarmıyım?
-daha hızlı veya mantıklısı ne olabilir?
zira image nesnesine nil komutunu vermediğimde yaklaşık 300 fotoğraflık kayıt üzerinde gezinti yaptıktan sonra programı kapattığımda hata mesajı aldım, nil komutundan sonra bu hata dönmedi. fikir ve yardımlarınızı paylaşırsanız sevinirim.
kolay gelsin