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

لجعل TreeView تظهر العناصر التي في الشكل مرتبتاً ترتيباً هرمياً

مغلق
بدأه أبو محمد الهذلي في 9 نوفمبر 2002 · 0 رد · 800 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1

هذه مشاركة متواضعة من مبتدئ أرجو أن تقبلوها :

هذه الإجراء يعطيك كل العناصر التي في الشكل مرتبة ترتيباً هرمياً في عنصر TreeView

[l]

var
  ClassRef: TClass;
   ClassChild : TClass;
  I : Integer;
  NodeParent : TTreeNode;
  NodeChild : TTreeNode;
   new : TTreeNode;
begin
  For I := 0 To componentCount-1 do
    begin
      NodeChild := Nil;
      ClassRef := components.ClassType;
      while ClassRef <> nil do
      begin
        if SearchNode(ClassRef.ClassName) = Nil
        then New := TreeView1.Items.Add(Nil,ClassRef.ClassName);
        NodeParent := SearchNode(ClassRef.ClassName);
        if NodeChild <> nil
        then NodeChild.Moveto(NodeParent, naAddChild);
        if NodeParent.Parent <> Nil
        then Break;
        NodeChild := New;
        ClassRef := ClassRef.ClassParent;
      end;
    end;
end;

//================================

function TForm1.SearchNode(NodeText: String): TTreeNode;
var
  Node : TTreeNode;
begin
  Result := Nil;
  if TreeView1.Items.GetFirstNode = Nil then Exit
  else Node := TreeView1.Items.GetFirstNode;
    if Node.Text = NodeText Then Result := Node
    else begin
        while Node.GetNext <> Nil do
        begin
          Node := Node.GetNext;
          if Node.Text = NodeText Then
          begin
            Result := Node;
            Exit;
          end;
        end;
    end;
end;

[/l]

ثم وجدت في إحدى المواقع استخدام TreeView1.Items.Count في عملية البحث مع حلقة for وهي عملية أسهل.

ثم وجدت في كتاب Delphi™ Developer's Handbook™ كيف تجعل treeview تظهر جميع الأصناف الوارثة لـ TObject

قد تقول ما الفائدة من هذا ؟؟ في الحقيقة أنا فرحان لأني بدأت أبرررمج!!!!:P ثم لعلك تستفيد من فكرته في أماكن أخرى

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

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