QuantumGrid'te Image Combobox Kullanımı

Yapmak istediğiniz işle ilgili doğru bileşeni bulmak için burayı kullanabilirsiniz. Sadece bulmak için, diğer sorular Programlama forumuna lütfen.
Forum kuralları
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
Cevapla
mpirpanlar
Üye
Mesajlar: 5
Kayıt: 12 Mar 2008 10:16
Konum: İstanbul
İletişim:

QuantumGrid'te Image Combobox Kullanımı

Mesaj gönderen mpirpanlar »

Merhaba, Geliştirmiş olduğum uygulamada stok kartlarına ait 3 adet değişik birim tanımlaması yapılabiliyor. İrsaliye ekranlarında da bu birimleri seçtiriyorum.

Stok Kartı
BRM1=Adet
BRM2=Koli
BRM3=Paket


BRM1=Gr.
BRM2=Kg.
BRM3=Ton

şeklinde olabiliyor başkabir stok kartında da başka değerler yazabiliyor. Buraya girilen değerler serbest kullanıcı 10 karaktere kadar istediği değeri yazabiliyor.
irsaliyede listeden stok kartı seçilgiğinde grid üzerinde yer alan birim sütununun değerlerini seçilen stok kartının birimlerine göre güncellemem gerekiyor. Bu değerler irsaliyede
1
2
3
olarak duruyor. İrsaliyede ilk stok seçiminden sonra sıkıntı yok. Ancak daha sonra yeni bir satır ekleyip birimleri farklı olan başka bir stok kartı seçtiğimde ve Birimler sütununda anlık olarak oluşturduğum TcxImageComboBox değerlerini değiştirdiğimde diğer satırlardaki birim değerleri de değiştiriyor. Bu işlemi düzgün bir şekilde yapabilmemin bir yöntemi varmı. Bu konuda yardımcı olabilirmisiniz.

Not: Form üzerinde olan DataSource OnDataChange olayında da sürekli stok kartını sorguluyor ve birimleri güncelliyorum ancak istediğim sonucu elde edemedim.
http://www.sentez.com
Mustafa PIRPANLAR
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: QuantumGrid'te Image Combobox Kullanımı

Mesaj gönderen mkysoft »

benzer sorun lookupcomboxda da oluyor. bir çözümü var. devexpress'in news serverında çözümü paylaşılmıştı, imagecombox'a uyarlanabilir. combobox için:

Kod: Tümünü seç

procedure Tfr_sinav_tanimlari.vw_konu_tanimEditing(
  Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem;
  var AAllow: Boolean);
var
  DC: TcxGridDBDataController;
  idxClass: Integer;
begin
  DC := TcxGridDBTableView(Sender).DataController;
  if TcxGridDBColumn(AItem).DataBinding.FieldName = 'konu_no' then
  begin
    idxClass := DC.GetItemByFieldName('ders').Index;
    AAllow := not VarIsSoftNull(DC.Values[DC.FocusedRecordIndex, idxClass]);
  end;
end;

procedure Tfr_sinav_tanimlari.vw_konu_tanimInitEdit(
  Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem;
  AEdit: TcxCustomEdit);
var
  MedClassValue: Variant;
  colMedClassIndex: Integer;
  DC: TcxGridDBDataController;
  LGrid: TcxCustomLookupDBGrid;
  colClassID: TcxLookupDBGridColumn;
begin
  DC := TcxGridDBDataController(Sender.DataController);
  colMedClassIndex := DC.GetItemByFieldName('ders_konu').Index;
  MedClassValue := DC.Values[DC.FocusedRecordIndex, colMedClassIndex];
  if AItem = vw_konu_tanimkonu_no then
  begin
    LGrid := TcxLookupComboBox(AEdit).Properties.Grid;
    colClassID := LGrid.Columns.ColumnByFieldName('ders');
    with LGrid.DataController.Filter do
    begin
      Root.AddItem(colClassID, foEqual, MedClassValue, VarToStr(MedClassValue));
      Active := True;
    end;
  end;
end;

procedure Tfr_sinav_tanimlari.vw_konu_tanimkitapcik_bPropertiesEditValueChanged(
  Sender: TObject);
var
  Edit: TcxCustomEdit;
  Value: Double;
  AnotherColumn: TcxGridColumn;
begin
  Edit := Sender as TcxCustomEdit;
    Value := Edit.EditValue;
    Edit.PostEditValue;
    AnotherColumn := vw_konu_tanim.GetColumnByFieldName('soru_no_b');
    Value:=value - vw_konu_tanim.GetColumnByFieldName('kitapcik_a').EditValue + vw_konu_tanim.GetColumnByFieldName('soru_no_a').EditValue;
    vw_konu_tanim.DataController.SetEditValue(AnotherColumn.Index, Value, evsValue);
end;
Cevapla