CTabCtrl::GetItem

更新 : 2007 年 11 月

タブ コントロールのタブに関する情報を取得します。

BOOL GetItem(
  int nItem,
  TCITEM* pTabCtrlItem 
) const;

パラメータ

  • nItem
    タブの 0 から始まるインデックス。

  • pTabCtrlItem
    取得する情報の指定に使う TCITEM 構造体へのポインタ。タブの情報を受け取るためにも使います。この構造体はメンバ関数 InsertItemGetItem、および SetItem で使います。

戻り値

正常終了した場合は TRUE を、それ以外の場合は FALSE を返します。

解説

mask メンバは、メッセージが送られたときに返す属性を指定します。mask メンバが TCIF_TEXT 値を指定しているときは、pszText メンバはアイテムのテキストを受け取るバッファのアドレスを保持しており、cchTextMax メンバはバッファのサイズを指定します。

  • mask
    取得または設定する TCITEM 構造体メンバを指定する値。このメンバには 0、または次の値の組み合わせを指定できます。

    • TCIF_TEXT   pszText メンバが有効です。

    • TCIF_IMAGE   iImage メンバが有効です。

    • TCIF_PARAM   lParam メンバが有効です。

    • TCIF_RTLREADING   ヘブライ語またはアラビア語のシステムでは、pszText のテキストが右から左の順に表示されます。

    • TCIF_STATE   dwState メンバが有効です。

  • pszText
    構造体がタブについての情報を保持しているときは、タブのテキストを持つ NULL で終わる文字列へのポインタ。構造体が情報を受け取るときは、このメンバはタブのテキストを受け取るバッファのアドレスを指定します。

  • cchTextMax
    pszText が指すバッファのサイズ。構造体が情報を受け取らないときは、このメンバは無視されます。

  • iImage
    タブ コントロールのイメージ リスト内のインデックス。タブにイメージがないときは -1。

  • lParam
    タブに関連付けられたアプリケーション定義のデータ。タブごとのアプリケーション定義のデータが 4 バイト以上あるときは、アプリケーションで構造体を定義し、TCITEM 構造体の代わりに使います。アプリケーション定義の構造体の先頭のメンバは、TCITEMHEADER 構造体とする必要があります。TCITEMHEADER 構造体は TCITEM 構造体と同じですが、lParam メンバを持っていません。アプリケーション定義の構造体のサイズと TCITEMHEADER 構造体のサイズの差は、タブごとの補足バイト数に一致します。

使用例

// In this example a CTabCtrl data member, m_TabCtrl, changes the
// text of the tabs in the tab control.  A call to GetItem is used
// to get the current text, and then the text is changed.  A call 
// to SetItem is used to update the tab with the new text.

void CTabDlg::OnChangeItem()
{
   TCITEM tcItem;
   CString pszString;

   //  Get text for the tab item.
   GetDlgItemText(IDC_ITEM_TEXT, pszString);

   //  Get the current tab item text.
   TCHAR buffer[256] = {0};
   tcItem.pszText = buffer;
   tcItem.cchTextMax = 256;
   tcItem.mask = TCIF_TEXT;
   m_TabCtrl.GetItem(0, &tcItem);
   TRACE(_T("Changing item text from %s to %s..."), tcItem.pszText, pszString);

   //  Set the new text for the item.
   tcItem.pszText = pszString.LockBuffer();

   //  Set the item in the tab control.
   m_TabCtrl.SetItem(0, &tcItem);

   pszString.UnlockBuffer();
}

必要条件

ヘッダー : afxcmn.h

参照

参照

CTabCtrl クラス

階層図

CTabCtrl::InsertItem

CTabCtrl::SetItem

その他の技術情報

CTabCtrl のメンバ