CHeaderCtrl::SetFocusedItem
現在のヘッダー コントロール内の指定されたヘッダー項目にフォーカスを設定します。
BOOL SetFocusedItem(
int iItem
);
パラメーター
パラメーター |
説明 |
---|---|
[入力] iItem |
ヘッダー項目のインデックス。 |
戻り値
このメソッドが成功した場合は true。それ以外の場合は false。
解説
このメソッドは Windows SDKで説明する HDM_SETFOCUSEDITEM のメッセージを送信します。
必要条件
ヘッダー: afxcmn.h
このメソッドは、Windows Vista およびそれ以降のバージョンでサポートされています。
このメソッドに関するその他の要件については、「Windows Vista コモン コントロールの作成要件」を参照してください。
使用例
次のコード例は、現在のヘッダー コントロールへのアクセスに使用される変数、m_headerCtrlを定義します。この変数は次のように使用されます。
CHeaderCtrl m_headerCtrl;
CSplitButton m_splitButton;
SetFocusedItem メソッドおよび GetFocusedItem メソッドのコード例を次に示します。コードの前の" "で、5 列のヘッダー コントロールを作成しました。ただし列が表示されないように、列の区分線をドラッグできます。次の例ではフォーカスの項目として最後の列ヘッダーを設定し、確認します。
void CNVC_MFC_CHeaderCtrl_s4Dlg::OnXSetfocuseditem()
{
if (controlCreated == FALSE) {
MessageBox(_T("Header control has not been created yet."));
return;
}
// Check that we get the value we set.
int item = m_headerCtrl.GetItemCount() - 1;
m_headerCtrl.SetFocusedItem(item);
int itemGet = m_headerCtrl.GetFocusedItem();
CString str = _T("Set: focused item = %d\nGet: focused item = %d");
str.Format(str, item, itemGet);
MessageBox(str, _T("Set/GetFocused Item"));
}