Q&A

  • TreeView ===> TMainMenu

TreeView의 List을 가지고 메뉴컴포넌트에 메뉴를 등록 하는 방법을
여러 고수님들 좀 가르켜 주십시요?

나름대로 만들어 보니까 잘 안되고 있네요.

2  COMMENTS
  • Profile
    최용일 2003.02.05 22:56
    안녕하세요. 최용일입니다.

    그냥 재귀호출하시면 간단히 될건데......

    procedure TForm1.Button1Click(Sender: TObject);
    begin
        MakeMenu;
    end;

    procedure TForm1.MakeMenu;
    var
        Index: Integer;
        CurNode: TTreeNode;
        NewMenu: TMenuItem;
    begin
        CurNode := TreeView.Items.GetFirstNode;
        while CurNode <> nil do
        begin
            NewMenu := TMenuItem.Create(Self);
            NewMenu.Caption := CurNode.Text;
            MainMenu.Items.Add(NewMenu);

            MakeSubMenu(CurNode, NewMenu);

            CurNode := CurNode.GetNextSibling;
        end;
    end;

    procedure TForm1.MakeSubMenu(TreeNode: TTreeNode; MenuItem: TMenuItem);
    var
        Index: Integer;
        NewMenu: TMenuItem;
        CurNode: TTreeNode;
    begin
        CurNode := TreeNode.GetFirstChild;
        while CurNode <> nil do
        begin
            NewMenu := TMenuItem.Create(Self);
            NewMenu.Caption := CurNode.Text;
            MenuItem.Add(NewMenu);

            MakeSubMenu(CurNode, NewMenu);

            CurNode := CurNode.GetNextChild(CurNode);
        end;
    end;

    ^^ 항상 즐코하세요...

  • Profile
    임종학 2003.02.05 23:12
    정말 감사....