我想做个类似美萍人事管理系统的主界面,就是在mainform上用两个PANEL再加一个SPLITTER,左边的PANEL放置透明安钮,当点击时,右边的PANEL会相应变化.请问怎么实现?有具体的代码最好!

解决方案 »

  1.   

     那个你用PAGECONTROL来试下
      

  2.   

    不知道理解的对不对,你可以通过panel,将其他的窗口的panel的parent设置成主窗口的panel
    procedure ShowPanel(APanel,APanelMain: TPanel);
    var
      I: Integer;
      AControl: TControl;
    begin
      APanel.Parent := APanelMain;
      APanel.Left := 0;
      APanel.Top := 0;
      APanel.Visible := True;
      for I := 0 to APanelMain.ControlCount - 1 do
      begin
        AControl := APanelMain.Controls[I];
        if (AControl is TPanel) and (AControl <> APanel) then
          AControl.Visible := False;
      end;
    end;
    或者用pagecontrol,将tabvisible=false就行了
      

  3.   

    用楼上的第二种方法时,tabvisible=false就什么也看不到了,tabvisible=true它还是选项卡的形式,怎么把选项卡的标签去掉呢?
      

  4.   

    TABSHEET头能去掉的...用TABSHEET的属性Visible=false;就行了.先在左框中放钮,右框为多头框,运行时,在CREATE时,便把TABSHEET都隐藏,设置一个默认框显示着.然后,左边钮,就对应显示某一页.
      

  5.   

    1.用pagecontrol,左侧放置,通过改变标签来改变右边panel
    2.自己在左侧放置按钮
    3.第三方控件,美萍用的就是第三方的,有dx的,有tms的,你可以试试
      

  6.   

    我把tabsheet的tabVisible=false,然后我在点击安钮,可是每反应,我的安钮事件是这样写的
    procedure Tmainform.Button1Click(Sender: TObject);
    begin
    mainform.PageControl1.TabIndex:=0;
    end;procedure Tmainform.Button2Click(Sender: TObject);
    begin
    mainform.PageControl1.TabIndex:=1;不知道对不对?
      

  7.   

    procedure TForm1.FormCreate(Sender: TObject);
    var
     i:integer;
    begin
      for i:=0 to  PageControl1.PageCount-1 do
      begin
         PageControl1.Pages[i].TabVisible:=false;  end;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
    PageControl1.ActivePageIndex:=0;
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
    PageControl1.ActivePageIndex:=1;
    end;procedure TForm1.Button3Click(Sender: TObject);
    begin
    PageControl1.ActivePageIndex:=2;
    end;//============================新鲜出炉...还热着呢...呵呵
      

  8.   

    噢....我的PAGECONTRL中总共有三页[0,1,2],以此写了三个BUTTON.默认页...一般来说...进去时,不能把所有的页都给隐藏了,要留下一页给人看的.
    你可以把这一页,显示出来,然后把相关的状态(状态是指进入该页应具有的状态,是你编程决定的)改一下.呵呵.
      

  9.   

    噢...你是左边PANEL右边也是个PANEL....这个.....你要把三个PANEL放好.
    然后都隐藏,只显示你想要出现的一页.
    ==================================
    还有种,是你二边放PANEL,然后,里面的功能就做成一个个FORM.然后把FORM嵌入到PANEL里面去.
    ==================================
    感觉用PAGECONTRL控件最为简单.(如果你要做的是大程序,这个就比较不合适了.调用FORM比较好,可以扩展开发.)
      

  10.   

    呵呵,恕我愚笨,我就想把tabsheet1设为默认页面,可是弄不好