gridde birden cok sonucu dondurmek

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
otherside
Üye
Mesajlar: 65
Kayıt: 11 Mar 2005 02:48
Konum: istanbul

gridde birden cok sonucu dondurmek

Mesaj gönderen otherside »

merhaba arkadaslar dbgridde birden cok sonucu baska bir yere atmak stiyorum baska vt ye mesala griddin multiselect ozellıgını actım

sole bi kod yazdım bana hep son seçileni donduruyo
for i:=0 to DBGrid1.SelectedIndex do
ShowMessage(DBGrid1.Columns[4].Field.Text);
hepsini gorebilmem için ne yapmam lazım kolay gelsin
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Mesaj gönderen vkamadan »

Merhaba ,
TDbGrid de Multiselect özelliği TBookmarkList tipinde bir değere sahipolur.

ve aşağıdaki örnekteki gibi bu listenin eleman sayısı kadar yani seçilmiş satır sayısını dikkate alan bi döngü ile Bookmark yani işaretleme yöntemiyledataset üzerindeki kayıtlara ulaşıp istediğiniz işlemleri yapabilirsiniz.

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  if DBGrid1.SelectedRows.Count>0 then
    with DBGrid1.DataSource.DataSet do
      for i:=0 to DBGrid1.SelectedRows.Count-1 do
      begin
        GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
        //burada gerekli işlemler...      
      end;
end;
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
otherside
Üye
Mesajlar: 65
Kayıt: 11 Mar 2005 02:48
Konum: istanbul

Mesaj gönderen otherside »

saol abi TBookmarkList tıpınde deger dondurdugunu bılıyodum buraya kadar gelmıstım ama
GotoBookmark(pointer(DBGrid1.SelectedRows.Items));
i cozemedıgım için orda kalmısıtım saolasın iyi çalısmalar
Cevapla