ページコントロールのタブの色の変更

解決


クッキー  2004-02-11 22:11:57  No: 7061  IP: 192.*.*.*

Delphi のPageControl のタブの色をページごとに変えるにはどうしたらいいですか

編集 削除
jok  2004-02-11 23:10:58  No: 7062  IP: 192.*.*.*

OwnerDraw を true にして、こんな感じ

procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
begin
  with Control.Canvas do begin
    case TabIndex of
      0:Brush.Color := clAqua;
      1:Brush.Color := clLime;
      2:Brush.Color := clFuchsia;
    else
      Brush.Color := clGray;
    end;
    if Active then Brush.Color := clYellow;
    FillRect(Rect);
    TextOut(Rect.Left+4,Rect.Top+4,PageControl1.Pages[TabIndex].Caption);
  end;
end;

編集 削除
クッキー  2004-02-12 19:52:58  No: 7063  IP: 192.*.*.*

ありがとうございます。
さっそく、試してみましたが
イベント  OnDrawTab をクリックしてコーディングしてみました。
procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
に飛ばないようなのですが、何か設定しなけらばならないのでょか?
すみませんがよろしくお願いします

編集 削除
jok  2004-02-12 21:38:49  No: 7064  IP: 192.*.*.*

> OwnerDraw を true にして

これしましたか?

編集 削除
クッキー  URL  2004-02-12 21:47:31  No: 7065  IP: 192.*.*.*

どうもありがとうございました。
色が変わりました。

編集 削除