delphi4arab منتديات دلفي للعرب

نسخة كاملة : التعامل مع Treeview
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم

أعمل برنامج حسابات ولم استطيع التعامل مع مع مكون treeview لعمل شجرة حسابات
حيث يتم حفظ البنود في قاعدة البيانات وعرضها في treeview
لو تفضل احد شرح التعامل معه

مرفق لكم جدول البنود

جزاكم الله خيرا
وعليكم السلام ورحمة الله وبركاته
حاول طرح سؤال محدد ما الذي تود عمله؟
لو بقيت طول اليوم أشرح التعامل مع المكون لما انهيت!
انظر الأمثلة المرفقة مع دلفي...
لدي جدولين الجدول الاول بها b_no و b_name
الجدول الثاني بها و b_no و s_no و s_name

كيف اضافة b_name و يتفرع منه s_name في حالة تساوي b_no في الجدول الاول b_no في الجدول الثاني
كود :
var N: TTreeNode; While not form2.adoTable1.Eof do begin N:= form1.TreeView1.Items.AddChild(Nil,form2.adotable1.Fields[1].AsString); form2.adotable2.first; While not form2.adotable2.Eof do begin form1.TreeView1.Items.AddChild(N,form2.adotable2.Fields[1].AsString); form2.adotable2.Next; end;
في حال انك تريد الضغط على زر وتظهر البيانات في التري فيو يمكنك استخدام هذا الكود

على اساس انك عملت الجدول الثانوي في ADOTABLE2
والجدول الاب او الرئيسي في الADOTABLE1


اتمنى لك التوفيق


مع ذلك لدي سؤال لو اردنا ان يعرض حقل معين وليكن حقل الاسماء لكن عند النقر على اي فرغ فيها يقوم بالارتباط بحقل ال ID

انا اعرف انه نستطيع بال LISTBOX بواسطة الامر ADDOBJECT

لكني لم استطع عملة بالتري فيو
توصلت الي الحل هذا هو الكود
كود :
var N: TTreeNode; begin ADOTable1.Open; ADOTable2.Open; While not ADOTable1.Eof do begin N:= TreeView1.Items.AddChild(Nil,ADOTable1.Fields[1].AsString); ADOTable2.first; While not adotable2.Eof do begin if (ADOTable1.FieldByName('b_no').AsString=ADOTable2.FieldByName('b_no').AsString) then TreeView1.Items.AddChild(N,adotable2.Fields[2].AsString); adotable2.Next; end; ADOTable1.Next; end;
اشكرك اخي لكن المشكلة لم تحل هذه الصورة ستوضح المشكلة وكذلك المرفق
كود :
http://www5.0zz0.com/2011/03/31/10/947090031.jpg
الاخ shagrouni جاب الفكرة في هذا الموضوع
record pointer
لكني لم استطع التطبيق
ولكم جزيل الشكر