Delphi Can
cxgrid kolonları index numarasına göre eşitleme - Baskı Önizleme

+- Delphi Can (https://www.delphican.com)
+-- Forum: Delphi (https://www.delphican.com/forumdisplay.php?fid=3)
+--- Forum: Genel Programlama (https://www.delphican.com/forumdisplay.php?fid=6)
+--- Konu Başlığı: cxgrid kolonları index numarasına göre eşitleme (/showthread.php?tid=3163)



cxgrid kolonları index numarasına göre eşitleme - cinarbil - 17-01-2019

İyi günler

cxgrid, tableview iki kolon var bunlar combobox secili program başlangıcında combox boxlar doluyor.

1. kolon Ack        2. kolon deger
deneme                 5,20
kontrol                   3,75
test                        1,0  gibi 



birinci değişince index numarasını alıyorum.
procedure Tparametrefrm.ic_en_ack_kolonPropertiesChange(Sender: TObject);
begin
showmessage(inttostr(ic_en_grid_view.DataController.FocusedRecordIndex));

// burada 1. alan index numarasına göre  2. kolonda index numarasındaki bilgi gelsin istiyorum 
// 1 alan kontrol  ise 2. alan 3,75 gibi  
// standart combobox da
ikinci.item.index := birinci.item.index;  gibi yapılıyordu.
end;

yardımcı olabilirmisiniz ?


cxgrid kolonları index numarasına göre eşitleme - adelphiforumz - 17-01-2019

@cinarbil eğer yazdıklarını yanlış anlamadıysam.
sen 1.kolondaki comboboz içerisinden 3.satırı secince
2.kolondaki combobox'ında 3.satırı seçilmiş olsun istiyorsun
bunun icin colonun[X].itemindex ile gitmen gerektiğini düşünüyorum
umarım doğru anlamışımdır.


Cvp: cxgrid kolonları index numarasına göre eşitleme - cinarbil - 17-01-2019

(17-01-2019, Saat: 13:49)adelphiforumz Adlı Kullanıcıdan Alıntı: @cinarbil  eğer yazdıklarını yanlış anlamadıysam.
sen 1.kolondaki comboboz içerisinden 3.satırı secince
2.kolondaki combobox'ında 3.satırı seçilmiş olsun istiyorsun
bunun icin colonun[X].itemindex ile gitmen gerektiğini düşünüyorum
umarım doğru anlamışımdır.

evet doğru anlamışsınız 
itemindex yok

kolonadi.index var bu kolonun view deki sırasını belirtiyor.
bizim ihtiyacımız kolon içindeki datanın index no 
kolonadi.datacontroller.   buna benzer olması lazım help ve google dan araştırıyorum ama 
şa ana kadar netice alamadım.


Cvp: cxgrid kolonları index numarasına göre eşitleme - Fesih ARSLAN - 17-01-2019

Merhaba,
Aşağıdaki yöntemle hücrenin değerini alabilirsiniz. Aynı satırda bulunan sonraki sütün değerini almak için Index değerini bir arttırmanız yeterli olacaktır.
<cxGridDBTableViewAdı>.DataController.GetValue(<cxGridDBTableViewAdı>.DataController.FocusedRecordIndex, <cxGridSütunAdı>.Index)



Cvp: cxgrid kolonları index numarasına göre eşitleme - cinarbil - 17-01-2019

(17-01-2019, Saat: 14:14)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba,
Aşağıdaki yöntemle hücrenin değerini alabilirsiniz. Aynı satırda bulunan sonraki sütün değerini almak için Index değerini bir arttırmanız yeterli olacaktır.
<cxGridDBTableViewAdı>.DataController.GetValue(<cxGridDBTableViewAdı>.DataController.FocusedRecordIndex, <cxGridSütunAdı>.Index)

Emekleriniz ve cevabınız için teşekkür ederim.
procedure Tparametrefrm.ic_en_ack_kolonPropertiesChange(Sender: TObject);

begin
ShowMessage(ic_en_grid_view.datacontroller.Values[ic_en_grid_view.DataController.FocusedRecordIndex,1]);
end;

bu kodla istediğim kolondaki değeri alabiliyorum. ihtiyacım

resimdeki birinci kolonda değişiklik olursa ikinci kolon otomatik güncellensin

birinci kolon Tse li fitil secildi ise ikinci kolon 2,5 olsun.


cxgrid kolonları index numarasına göre eşitleme - adelphiforumz - 17-01-2019

@cinarbil Biraz geç oldu fakat bu sanırım işini görür
procedure TForm1.cxGrid1DBTableView1Field1PropertiesCloseUp(Sender: TObject);
begin
  cxGrid1DBTableView1Field2.EditValue := TcxComboBoxProperties(cxGrid1DBTableView1Field2.Properties).Items[TcxComboBox(Sender).ItemIndex];
end;