SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(ComponentOne)

TabPlusコンポーネントを使ってタブを多彩にカスタマイズする

GcTabControlコントロールが持つ多彩なタブページデザイン

  • このエントリーをはてなブックマークに追加

各処理の作成(2/2)

ボタンスキンの設定

 ボタンスキンとは、タブ形状をボタンにしたときに、ボタンの形状を変える操作のことです。

 タブのスタイルは、実はすべてオブジェクトになっており、それぞれのクラスを使うことでカスタマイズすることができます。

  • ButtonsSkin
  • ClassicSkin
  • ExcelSkin
  • ImageSkin
  • MdiChildSkin
  • Skin
  • StandardSkin
  • SystemSkin
  • VS2005Skin

 ボタンスキンは、この中のButtonsSkinクラスで、あらかじめいくつかのスタイルが用意されており、これを使うことができますが、独自にカスタマイズしたりゼロから描画したりすることもできます。

 ボタンスキンを使う場合は、次の操作をします。

  1. まず、ButtonsSkinクラスのインスタンスを作成します。
     
    Dim objButtonsSkin _
        As New GrapeCity.Win.TabPlus.Skins.ButtonsSkin
    
     
  2. そのインスタンスの、ButtonsSkinStyleプロパティに、設定したいスタイルを指定します。値は、ButtonsSkinStyle列挙体のメンバです。
     
    objButtonsSkin.ButtonsSkinStyle = _
        GrapeCity.Win.TabPlus.Skins.ButtonsSkinStyle.ActiveFlat
    
     
  3. ボタンスキンが使えるように、AppearanceプロパティにTabAppearance列挙体のメンバの中の、カスタムスキンスタイル「Skin」を指定します。
     
    GcTabControl1.Appearance _
        = GrapeCity.Win.TabPlus.TabAppearance.Skin
    
     
  4. GcTabControl1クラスのSkinプロパティに、作成したButtonsSkinクラスのインスタンスを設定します。
     
    GcTabControl1.Skin = objButtonsSkin
    
ButtonsSkinStyle列挙体のメンバ
メンバ名 説明
Normal 通常のボタンスタイル
Flat フラットのボタンスタイル
Popup ポップアップのボタンスタイル
ActiveFlat アクティブフラットのボタンスタイル
Borderless 境界線のないボタン
XPButton Windows XPのボタンスタイル
XPToolBarButton Windows XPツールバーのボタンスタイル
Office2003GradientToolBarButton Office 2003ツールバーのグラディエントボタンスタイル
Office2003HighlightToolBarButton Office 2003ツールバーのハイライトボタンスタイル
VS2003WhiteButton VS2003 Resx Editorの白いボタンスタイル
Office2003風のグラデーションタブ
Office2003風のグラデーションタブ

タブの背景色の変更

単色での塗りつぶし

 TabStyleクラスのBackColorプロパティを使うと、タブの背景色を塗りつぶすことができます。

GcTabControl1.TabStyle.BackColor = Me.ColorDialog1.Color

パターンでの塗りつぶし

 PatternEffectプロパティを使用すると、タブの背景色をパターンで塗りつぶすことができます。

 プロパティの設定値はPatternEffectオブジェクトなので、PatternEffectクラスのコンストラクタを使用してインスタンスを作成し、PatternEffectプロパティに設定します。

 コンストラクタの引数は2つで、最初の引数に塗りつぶしパターンの種類を整数値またはPatternStyle列挙体のメンバで指定します。2番目の引数には、パターンの色を指定します。タブの背景色と組み合わせて、いろいろな色のパターンを作成できます。

Dim objPatternEffect As New GrapeCity.Win.TabPlus.PatternEffect _
    (GrapeCity.Win.TabPlus.PatternStyle.BackwardDiagonal, Color.Green)

GcTabControl1.TabStyle.PatternEffect = objPatternEffect

グラデーションでの塗りつぶし

 前回の記事でも紹介した、タブをグラデーションで塗りつぶす方法ですが、今回はもう少し詳しく紹介します。

 タブのグラデーションでの塗りつぶしは、まずGradientEffectオブジェクトを作成します。作成には、クラスのコンストラクタを使用し、最初の引数にグラデーションのスタイル、2番目の引数にグラデーションの方向、3番目の引数にグラデーションの開始色、4番目の引数にグラデーションの終了色を指定します。

 グラデーションのスタイルはGradientStyle列挙体のメンバまたは整数値を、方向はGradientDirection列挙体のメンバまたは整数値を指定します。

Dim objGradientEffect As New GrapeCity.Win.TabPlus.GradientEffect _
    (GrapeCity.Win.TabPlus.GradientStyle.Horizontal, _
    GrapeCity.Win.TabPlus.GradientDirection.Forward, Color.Orange, Color.Yellow)

 GradientEffectオブジェクトを作成したら、これをGradientEffectプロパティに設定します。

GcTabControl1.TabStyle.GradientEffect = objGradientEffect
四角形のスタイルを中心からグラデーションするように設定した
四角形のスタイルを中心からグラデーションするように設定した

まとめ

 紹介したように、TabPlusコンポーネントを使用すると、標準コントロールにはない多彩なデザインをタブに施すことができます。また、タブのドラッグ&ドロップによる移動は、Excel風のワークシートを作成したときなどに使うと便利です。

 他のアプリケーションと一味違ったデザインを作りたいときは、このTabPlusコンポーネントを使ってみてはいかがでしょうか。

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
ComponentZine(ComponentOne)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/718 2008/08/20 13:19

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング