我有一个数组里面存放着n个Frame的名称,又有一个treeview有n个节点,我想点击某个节点(该节点存储有相应frame得名称),就在form上创建该节点对应的frame。应该怎么做?代码实例,谢谢!

解决方案 »

  1.   

    type
      TFrameType = class of TFrame;  TForm1 = class(TForm)
      private
        theframe: TFrame;
      public
        procedure createform(aaa: TFrameType);
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.createframe(aaa: TFrameType);
    begin
      if theframe <> nil then theframe.free;
      theframe := aaa.Create(Self);
      theframe.parent := self;
      theframe.height ........
    end;搞定,给分
      

  2.   

    treeview的点击事件中
    var 
      tmpFrm:Tframe;
    begin
      tmpfrm:=Tframe.create(form1);
      tmpFrm.name:=该节点上存在的frame的名称;
    end;
      
      

  3.   

    在TreeView的鼠标单击事件中写代码
    var
      Frame :TGroupBox;
    begin
      if TreeView1.Selected <> nil then   //如果选中了树节点的时候
      begin
        Frame :=TGroupBox.Create(Self);
        Frame.Name :=TreeView1.Selected.Caption ;  //把树控件节点的名称赋值给动态创
    //建的Frame
        Frame.Parent :=Form1;        //Frame的容器是窗口
        Frame.Top := 10;
        Frame.Left :=10;             //位于窗口的左上角(10, 10)
       end;
    end;
      

  4.   

    可能是我没有表达清楚,重复一下:我已经创建了几个frame分别实现几个功能,点击树形控件某个节点,就在forn上把相应的frame创建上去。