Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
cxDBTreeList
#1
CxDbTreeList kullanıyorum. Hiyerarşik yapıdan dolayı programın ilk açılışı ciddi olarak yavaşladı (500  kayıt var, 20 sn gibi bekliyor açılırken) Alanlar index li. SmartLoad modu var ancak bunu aktif edince bu sefer de item ların dragdrop özelliği bozuluyor, program kitleniyor.
Bir çözüm önerisi olan var mı ??
Cevapla
#2
(14-03-2019, Saat: 17:32)delphi-x Adlı Kullanıcıdan Alıntı: CxDbTreeList kullanıyorum. Hiyerarşik yapıdan dolayı programın ilk açılışı ciddi olarak yavaşladı (500  kayıt var, 20 sn gibi bekliyor açılırken) Alanlar index li. SmartLoad modu var ancak bunu aktif edince bu sefer de item ların dragdrop özelliği bozuluyor, program kitleniyor.
Bir çözüm önerisi olan var mı ??

500 Kayıtta falan öyle zorlanmaması gerek. Çok fazla Field mi var ?
Çözüm olarak SmartLoad kullan drag dropları ise kendin ayarla.
Database işlemlerimde cxTreeList Kendime göre db modülü oluşturup kullanıyorum. Milyon kayıtta herhangibir sorun ile karşılaşmadım.
Cevapla
#3
(14-03-2019, Saat: 17:32)delphi-x Adlı Kullanıcıdan Alıntı: CxDbTreeList kullanıyorum. Hiyerarşik yapıdan dolayı programın ilk açılışı ciddi olarak yavaşladı (500  kayıt var, 20 sn gibi bekliyor açılırken) Alanlar index li. SmartLoad modu var ancak bunu aktif edince bu sefer de item ların dragdrop özelliği bozuluyor, program kitleniyor.
Bir çözüm önerisi olan var mı ??

fazla alan yok. component db duyarlı olduğu için drag-dropları otomatik kendi yapıyor müdahale edilmiyor. Ben de sizin gibi cxTreeList e geçtim. ancak başka sorunlar çıkıyor. öesela tıkladığım node anlık veri çekip yükleniyor bu sefer de her tıkladığımda aynı node lar tekrar yükleniyor. sizin yapı hakkında biraz detay verir misiniz?
Cevapla
#4
(14-03-2019, Saat: 21:12)delphi-x Adlı Kullanıcıdan Alıntı:
(14-03-2019, Saat: 17:32)delphi-x Adlı Kullanıcıdan Alıntı: CxDbTreeList kullanıyorum. Hiyerarşik yapıdan dolayı programın ilk açılışı ciddi olarak yavaşladı (500  kayıt var, 20 sn gibi bekliyor açılırken) Alanlar index li. SmartLoad modu var ancak bunu aktif edince bu sefer de item ların dragdrop özelliği bozuluyor, program kitleniyor.
Bir çözüm önerisi olan var mı ??

fazla alan yok. component db duyarlı olduğu için drag-dropları otomatik kendi yapıyor müdahale edilmiyor. Ben de sizin gibi cxTreeList e geçtim. ancak başka sorunlar çıkıyor. öesela tıkladığım node anlık veri çekip yükleniyor bu sefer de her tıkladığımda aynı node lar tekrar yükleniyor. sizin yapı hakkında biraz detay verir misiniz?

  TAksaNodeBase = class;
 TAksaNodeClass = class of TAksaNodeBase;
 TAksaNodeEventclass = class of TAksaNodeEventHandler;

 TAksaNodeAccessItem = (isNew, isDelete, isEdit, isCopy, isMovie);
 TAksaNodeAccess = set of TAksaNodeAccessItem;

 //TAksaRootAfterCreate = procedure(Node: TAksaNodeRoot) of object;

 TAksaNodeOnAcces = function(AccessItem:TAksaNodeAccessItem):Boolean of object;
 TAksaNodeOnLoad = procedure(ANode: TAksaNodeBase) of object;
 TAksaNodeOnSelect = procedure(ANode: TAksaNodeBase) of object;
 TAksaNodeOnDelete = procedure(ANode: TAksaNodeBase; var IsDelete: Boolean) of object;
 TAksaNodeOnNewNode = procedure(ANode,NewNode: TAksaNodeBase; var IsAddet: Boolean) of object;
 TAksaNodeOnChangeValue = procedure(ANode: TAksaNodeBase; Coll: TcxTreeListColumn; var new: Variant; var IsChange: Boolean) of object;  
 
 TAksaNodeBase = class(TcxUnboundTreeListNode)
 private
   FAksaLoaded: Boolean;
   FAksaID: Integer;
   FRoot: TAksaNodeBase;
   function GetAksaLock: Boolean;
   procedure SetAksaLock(const Value: Boolean);
 protected
   procedure DoAksaLoad; virtual;
   function DoAddNew(nd:TAksaNodeBase):Boolean; virtual;
   Function DoChangeValue(const Colls: TcxTreeListColumn; var new: Variant): Boolean; virtual;
   function DoDelete:Boolean; virtual;
   procedure DoAksaSelect; virtual;
   function GetAcces(const itm: TAksaNodeAccessItem): Boolean; virtual;
   function GetChilClass: TAksaNodeClass; virtual;

 public
   function FindAksaID(const AID: Int32): TAksaNodeBase;
   function FindValue(const v: string; const Coll:TcxTreeListColumn): TAksaNodeBase; overload;
   function FindValue(const v: string; const Coll:Integer): TAksaNodeBase; overload;
   function IsAksaRoot:Boolean;
   property AksaRoot:TAksaNodeBase read Froot write Froot;
   procedure AksaLoad;
   procedure ReLoad;
   property AksaLock: Boolean read GetAksaLock write SetAksaLock;
   Property AksaID: Int32 read FAksaID write FAksaID;

 end;
Cevapla




Konuyu Okuyanlar: 1 Ziyaretçi