Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Uzun süren işlemi hızlandırma
#1
Merhaba;

Listviewde seçili satırdan sonraki satırların tümünü seçmek istiyorum, 500 adet satır var fakat bu 500 satırın seçilmesi yaklaşık 30 saniye sürüyor. acaba satırların daha hızlı seçilmesini nasıl sağlaya bilirim?


procedure TForm2.TumuClick(Sender: TObject);
begin
  if ListemList.SelCount > 0 then
  begin
    for J := ListemList.Selected.Index to ListemList.Items.Count - 1 do
    begin
      ListemList.Items[J].Selected := True;
    end;
  end;
end;
Cevapla
#2
Listview in BeginUpdate ve EndUpdate özellikleri olması lazım, onları kullanarak denediniz mi?

procedure TForm2.TumuClick(Sender: TObject);
begin

ListemList.items.beginupdate;
 
if ListemList.SelCount > 0 then
 begin
   for J := ListemList.Selected.Index to ListemList.Items.Count - 1 do
   begin
     ListemList.Items[J].Selected := True;
   end;
 end;

ListemList.items.EndUpdate;

end;
Cevapla
#3
Evet, BeginUpdate-EndUpdate size belirgin bir hız kazandıracaktır ama yetersiz gelirse Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol kullanabilirsiniz:
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
There's no place like 127.0.0.1
WWW
Cevapla
#4
Merhaba,

Görsel olarak ekranda oluşan komponentlerin yenilenmesi hususunda Komponent.BeginUpdate ile başlayıp, işlem bitiminde Komponent.EndUpdate fonksiyonlarını tetiklemek, ekranda herhangi bir şekilde refresh olmadığında, ilgili komponentin değişen verilerinin gösterimini hızlı bir şekilde sağlıyor ve işlemlerini daha rahat yaptırıyor.

Özellikle FMX projelerinizde StringGrid, ComboBox, ListBox, ListView gibi komponentler kullanırsanız kesinlikle BeginUpdate ve EndUpdate kullanmalısınız.
{ talk is cheap show me the code. }
Cevapla
#5
500 satırın seçilmesi yaklaşık 30 saniye sürüyor olması ilginç, bence listviewde ikinci bir kodlamaya takılıyordur.
Cevapla
#6
basit bir test yaptım 500 labe objesi ekledim ve seçmesi 100 milisaniye sürmüyor
Acaba listView eventlerinde birşeyler yapıyor olablirmisin.
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#7
(16-01-2018, Saat: 15:23)brs Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol500 satırın seçilmesi yaklaşık 30 saniye sürüyor olması ilginç, bence listviewde ikinci bir kodlamaya takılıyordur.

teşekkür ederim.
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Uzun özellikli bir tablo hk. seci20 7 166 Dün, Saat: 09:46
Son Yorum: ssahinoglu
  İşlemi hızlandırma? Thread? canbir 14 477 07-07-2018, Saat: 00:51
Son Yorum: ssahinoglu
  String Parse İşlemi yhackup 1 77 27-06-2018, Saat: 09:54
Son Yorum: adelphiforumz
  Stok Listesi Hızlandırma glagher 18 495 24-06-2018, Saat: 17:57
Son Yorum: narkotik
  Delphi ile Json Parse İşlemi yhackup 12 1.558 21-02-2018, Saat: 07:59
Son Yorum: 10.Köy



Konuyu Okuyanlar: 1 Ziyaretçi