求一个选项卡式的界面控件,
就是类似于IE7浏览器那种的,有关闭按纽的

解决方案 »

  1.   

    我做过好几个,给你说大概思路吧
    一个用TOOLBAR 改过来的, 通过 TB_GETBUTTON 和 TB_GETSTATE 消息来判断按纽状态,
    一个用pageControl改过来的, TCM_GETITEMRECT 消息来获得按纽区域一个从TGraphicControl继承过来的, 里边嵌按纽,按纽也自己写的, 从TGraphicControl继承相对好控制点
    一个从TCUSTOMCONTROL继承过来的, 功能都实现了,就是背景透明的时候,拉动的时候界面很闪,弄了好久
    后边俩种自己加个ACTIVE属性,属性的时候根据ACTIVE显示关闭按纽就可以, 默认都不显示的
    这种其实拦截鼠标消息,不同状态的图片切换, 
    最近写这类控件都写了好多个, 想死了 
      

  2.   

    就用TPageControl,将OwnerDraw属性设为True,然后在OnDrawTab事件中画,假设你的关闭按钮放在ImageList1中,且第一个就是:
    procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;
      TabIndex: Integer; const Rect: TRect; Active: Boolean);
    begin
      with PageControl1.Canvas do
      begin
        TextOut(Rect.Left + 2, Rect.Top + 2, PageControl1.Pages[TabIndex].Caption);
        ImageList1.Draw(PageControl1.Canvas, Rect.Right - 20, Rect.Top + 2, 0);
      end;
    end;
      

  3.   

    你可以在ImageList中放各种不同的小图片,然后根据需要画不同的图片。
      

  4.   

    可以使用RzPageControl,只是关闭按钮只有一个,不是每个选项卡上都有,但是可以通过关闭按钮关闭当前选项卡
      

  5.   

    已解决,谢谢楼上各位XD的帮助,使用RzPageControl,并将窗体绘制在RzPageControl中即可.