タブ・コントロール
共通の画面領域に異なった複数の種類の画面を表示するために使用します。
【タブ札を付ける】
このコントロールは、起動時にタブ札を付加する必要があります。
それには、InsertItem関数を使用します。このとき、タブ札に
付加する名前は、「TC_ITEM」構造体で指定します。
例)"サンプル"というラベルを付加
TC_ITEM tc0; //タブ札の性格を指定
tc0.mask = TCIF_TEXT; //タブ表示は文字列形式にする
tc0.pszText = "サンプル" //タブ札名を指定
tc.iImage = -1; //タブ札にイメージ表示しない
tc.lParam = 0; //タブに固有の値を設定
m_tab.InsertItem(0,&tc0); //0番の札を設定
【CTabCtrl::InsertItem関数】
BOOL InsertItem(int nItem, TC_ITEM* pTabCtrlItem);
戻り値 設定したタブ番号。エラー時は -1 を返す。
nItem 設定するタブ番号。
pTabCtrlItem タブの詳細を設定したTC_ITEM構造体へのポインタ
[TC_ITEM構造体]
typedef struct _TC_ITEM{
UNIT mask;
UNIT lpReserved1;
UNIT lpReserved2;
LPSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
}TC_ITEM;
mask :取得または設定時の有効メンバを指定
TCIF_ALL 全て有効
TCIF_TEXT pszTextが有効
TCIF_IMAGE iImageが有効
TCIF_PARAM lParamが有効
pszText :ラベルの文字列
cchTextMax :pszTextが指すバッファのサイズ。情報取得時使用
iImage :タブにイメージを表示するときに使うイメージリスト内のインデックス
lParam :タブに関連付けられたアプリケーション定義のデータ
【タブクリックの検出】
タブがクリックされた時、「TCN_SELCHANGEメッセージ」が発行されます。
そこで、これを検出するためにはClassWizardをを使用して、
「OnSelchangeTab1メンバ関数」を実装します。すると、「TCN_SELCHANGEメッセージ」
が発行される度に「OnSelchangeTab1メンバ関数」が呼び出されることになります。
【主なタブ操作用関数】
| 関数 | 内容 |
| GetCurSel | 選択されているタブ番号の取得 |
| SetCurSel | タブの選択 |
| SetItem | タブの属性を設定 |
| GetItem | タブの属性を取得 |
| DeleteItem | タブの削除 |