改变PAGECONTROL控件的TabSheet的标题颜色

第一种方法:修改标题文字颜色

 

首先将PageControl的OwnerDraw属性设为TRUE

 

然后在PageControl的OnDrawTab事件里写代码控制:

 

procedure TfrmMain.PageControl1DrawTab(Control: TCustomTabControl;
TabIndex: Integer; const Rect: TRect; Active: Boolean);
begin
   if Active then
      begin
         Control.Canvas.Font.Color:=clRed;      //标题设置为红色
         Control.Canvas.Font.Style:=[fsBold];   //文字加粗
      END;
   Control.Canvas.TextOut(rect.left+4,rect.top+4,PageControl1.Pages[TabIndex].Caption);
end;

 

效果

 

 

 

 

第二种方法:TabSheet标题背景高亮显示

 

在PageControl控件的OnChang事件中写

 

procedure TfrmMain.PageControl1Change(Sender: TObject);
   var
      i:integer;
      sheet:TTabSheet;
begin
for i:=0 to PageControl1.PageCount-1   do
      begin
         sheet:=PageControl1.Pages[i];
         if sheet=PageControl1.ActivePage   then
            sheet.Highlighted:=true
         else
            sheet.Highlighted:=false;
      end;
end;

 

效果

你可能感兴趣的:(Integer)