الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

التعامل مع TreeView

مغلق
بدأه moa mohsen في 10 فبراير 2005 · 2 رد · 692 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الاخ عروة

اولا اود ان اشكرك على ردك عن سؤالى عن التفرع الثالث ومابعده بالنسبة للشجرة

ولكن الكود الذى ذكرته لي ينشىء التفرع الثالث ولكن في المكان الذى لااريده

وما اريده هو ان ينشئ التفرع في مكان محدد وسأصف لك الموضوع

مثلا لو كنا نتحدث عن فهرس كتاب مثلا وكان عندي في الجدول الاول اسماء الابواب مثلا

وفي الجدول الثاني اسماء فصول مندرجة تحت هذه الابواب وحقل الربط بين الجدولين هو

اسم الباب وفي الجدول الثالث اسماء مواضيع تندرج تحت هذه الفصول وهو التفرع الثالث واريد ان تقوم الشجرة بوضع اسماء الابواب كجدور اصلية وذلك عن طريق الكود التالى وباعتبار ان جدول الابواب هو TABLE1 وجدول الفصول هو TABLE2 وجدول المواضيع المندرجة تحت الفصول هو TABLE3

TABLE1.first;

while not table1.eof do

begin

(تقوم الشجرة بوضع جدر رئيسي يمثل اسم الباب)

table2.filtered:= true;

table2.filter:='field1=+table1['field1'];

if table2.recordcount<>0 then

begin

table2.first;

while not table2.eof do

begin

(تقوم الشجرة بأضافة تفرع للجدر باسم اول فصل يندرج تحت الباب الاول)

table3.filtered:=true

table3.filter:='field1='+table2['field1']

if table3.recordcount<>0 then

table3.first;

while not ......

(تقوم الشجرة بادراج التفرع الثالث بعنوان الموضوع )

وهكذا

الرجاء اخى عروة ان تتكرم بذكر كود كامل بقدر الامكان لانني وادامك الله

#2

أظن أني فهمت عليك

جرب هذا أو عدل فيه قليلا .. لاحظ الفكره :

procedure TForm1.FormCreate(Sender: TObject);
var t1,t2,t3:TTreeNode;
begin
TABLE1.first;
while not table1.eof do
begin
t1:=TreeView1.Items.Add(nil,'table1Data');
table2.filtered:= true;
table2.filter:='field1='+table1['field1'];
if table2.recordcount<>0 then
begin
table2.first;
while not table2.eof do
begin
t2:=TreeView1.Items.AddChild(t1,'Table2Data');
table3.filtered:=true  ;
table3.filter:='field1='+table2['field1'] ;
if table3.recordcount<>0 then
table3.first;
while not table3.eof  do
begin
t3:=TreeView1.Items.AddChild(t2,'Table3Data')
end;
end;
end;
end;
end;

لاتنسى تغيير Table1Data و Table2Data و Table3Data إلى قيم من حقول هذه الجداول

#3

الاخ عروة لااعرف كيف يمكنني ان اعبر لك عن خالص شكري وامتناني على اهتمامك

ادامك الله عونا لنا

من علمنى حرفا صرت له عبدا

هذا الموضوع مغلق.

مواضيع مشابهة