CToolBarCtrl クラス

Windows ツール バー コモン コントロールの機能が用意されています。

構文

class CToolBarCtrl : public CWnd

メンバー

パブリック コンストラクター

名前 説明
CToolBarCtrl::CToolBarCtrl CToolBarCtrl オブジェクトを構築します。

パブリック メソッド

名前 説明
CToolBarCtrl::AddBitmap ツール バー コントロールで使用できるボタン イメージの一覧に、1 つ以上のビットマップ ボタンイメージを追加します。
CToolBarCtrl::AddButtons ツール バー コントロールに 1 つ以上のボタンを追加します。
CToolBarCtrl::AddString リソース ID として渡される新しい文字列を、ツール バーの文字列の内部リストに追加します。
CToolBarCtrl::AddStrings 区切られた文字列のバッファーへのポインターとして渡される新しい文字列を、ツール バーの NULL文字列の内部リストに追加します。
CToolBarCtrl::AutoSize ツール バー コントロールのサイズを変更します。
CToolBarCtrl::ChangeBitmap 現在のツール バー コントロールのボタンのビットマップを変更します。
CToolBarCtrl::CheckButton ツール バー コントロールの特定のボタンをオンまたはオフにします。
CToolBarCtrl::CommandToIndex 指定したコマンド識別子に関連付けられているボタンの 0 から始まるインデックスを取得します。
CToolBarCtrl::Create ツール バー コントロールを作成し、オブジェクトに CToolBarCtrl アタッチします。
CToolBarCtrl::CreateEx 指定した Windows 拡張スタイルを使用してツール バー コントロールを作成し、オブジェクトに CToolBarCtrl アタッチします。
CToolBarCtrl::Customize [ツール バーのカスタマイズ] ダイアログ ボックスを表示します。
CToolBarCtrl::DeleteButton ツール バー コントロールからボタンを削除します。
CToolBarCtrl::EnableButton ツール バー コントロールの指定したボタンを有効または無効にします。
CToolBarCtrl::GetAnchorHighlight ツール バーのアンカー強調表示設定を取得します。
CToolBarCtrl::GetBitmap ツール バーのボタンに関連付けられているビットマップのインデックスを取得します。
CToolBarCtrl::GetBitmapFlags ツール バーのビットマップに関連付けられているフラグを取得します。
CToolBarCtrl::GetButton ツール バー コントロール内の指定したボタンに関する情報を取得します。
CToolBarCtrl::GetButtonCount 現在ツール バー コントロールにあるボタンの数を取得します。
CToolBarCtrl::GetButtonInfo ツール バーのボタンの情報を取得します。
CToolBarCtrl::GetButtonSize ツールバー ボタンの現在の幅と高さをピクセル単位で取得します。
CToolBarCtrl::GetColorScheme 現在のツール バー コントロールの配色を取得します。
CToolBarCtrl::GetDisabledImageList ツール バー コントロールが無効なボタンを表示するために使用するイメージの一覧を取得します。
CToolBarCtrl::GetDropTarget ツール バー コントロールの IDropTarget インターフェイスを取得します。
CToolBarCtrl::GetExtendedStyle ツール バー コントロールの拡張スタイルを取得します。
CToolBarCtrl::GetHotImageList ツール バー コントロールが "ホット" ボタンを表示するために使用するイメージの一覧を取得します。 マウス ポインターが上にあると、ホット ボタンが強調表示されます。
CToolBarCtrl::GetHotItem ツール バーのホットアイテムのインデックスを取得します。
CToolBarCtrl::GetImageList ツール バー コントロールが既定の状態でボタンを表示するために使用するイメージリストを取得します。
CToolBarCtrl::GetInsertMark ツール バーの現在の挿入マークを取得します。
CToolBarCtrl::GetInsertMarkColor ツール バーの挿入マークの描画に使用する色を取得します。
CToolBarCtrl::GetItemRect ツール バー コントロール内のボタンの外接する四角形を取得します。
CToolBarCtrl::GetMaxSize ツール バーに表示されているすべてのボタンと区切り記号の合計サイズを取得します。
CToolBarCtrl::GetMaxTextRows ツール バー ボタンに表示されるテキスト行の最大数を取得します。
CToolBarCtrl::GetMetrics ツール バー コントロールのメトリックを取得します。
CToolBarCtrl::GetPadding 現在のツール バー コントロールの水平方向と垂直方向のパディングを取得します。
CToolBarCtrl::GetPressedImageList 現在のツール バー コントロールが押された状態のボタンを表すために使用する画像リストを取得します。
CToolBarCtrl::GetRect 指定したツール バー ボタンの外接する四角形を取得します。
CToolBarCtrl::GetRows ツール バーに現在表示されているボタンの行数を取得します。
CToolBarCtrl::GetState ツール バー コントロールの指定したボタンの状態に関する情報 (有効、押された、またはチェックかどうかなど) を取得します。
CToolBarCtrl::GetString ツール バー文字列を取得します。
CToolBarCtrl::GetStyle ツール バー コントロールに現在使用されているスタイルを取得します。
CToolBarCtrl::GetToolTips ツール バー コントロールに関連付けられているツール ヒント コントロールのハンドル (存在する場合) を取得します。
CToolBarCtrl::HideButton ツール バー コントロールの指定したボタンを非表示または表示します。
CToolBarCtrl::HitTest ツール バー コントロール内のポイントの位置を決定します。
CToolBarCtrl::Indeterminate ツール バー コントロールの指定したボタンの不確定 (灰色) の状態を設定またはクリアします。
CToolBarCtrl::InsertButton ツール バー コントロールにボタンを挿入します。
CToolBarCtrl::InsertMarkHitTest ツール バー内のポイントの挿入マーク情報を取得します。
CToolBarCtrl::IsButtonChecked ツール バー コントロール内の指定したボタンがチェックされているかどうかを示します。
CToolBarCtrl::IsButtonEnabled ツール バー コントロールの指定したボタンが有効かどうかを示します。
CToolBarCtrl::IsButtonHidden ツール バー コントロール内の指定したボタンが非表示かどうかを示します。
CToolBarCtrl::IsButtonHighlighted ツール バー ボタンの強調表示の状態を確認します。
CToolBarCtrl::IsButtonIndeterminate ツール バー コントロール内の指定したボタンの状態が不確定 (灰色) かどうかを示します。
CToolBarCtrl::IsButtonPressed ツール バー コントロール内の指定したボタンが押されているかどうかを示します。
CToolBarCtrl::LoadImages ツール バー コントロールのイメージ リストにビットマップを読み込みます。
CToolBarCtrl::MapAccelerator ツール バー ボタンにアクセラレータ文字をマップします。
CToolBarCtrl::MarkButton ツール バー コントロールの特定のボタンの強調表示の状態を設定します。
CToolBarCtrl::MoveButton あるインデックスから別のインデックスにボタンを移動します。
CToolBarCtrl::PressButton ツール バー コントロールの指定したボタンを押すか離します。
CToolBarCtrl::ReplaceBitmap 現在のツール バー コントロール内の既存のビットマップを新しいビットマップに置き換えます。
CToolBarCtrl::RestoreState ツール バー コントロールの状態を復元します。
CToolBarCtrl::SaveState ツール バー コントロールの状態を保存します。
CToolBarCtrl::SetAnchorHighlight ツールバーのアンカー強調表示設定を設定します。
CToolBarCtrl::SetBitmapSize ツール バー コントロールに追加するビットマップイメージのサイズを設定します。
CToolBarCtrl::SetButtonInfo ツール バーの既存のボタンの情報を設定します。
CToolBarCtrl::SetButtonSize ツール バー コントロールに追加するボタンのサイズを設定します。
CToolBarCtrl::SetButtonStructSize 構造体のサイズを TBBUTTON 指定します。
CToolBarCtrl::SetButtonWidth ツール バー コントロールのボタンの最小幅と最大幅を設定します。
CToolBarCtrl::SetCmdID 指定したボタンが押されたときに所有者ウィンドウに送信されるコマンド識別子を設定します。
CToolBarCtrl::SetColorScheme 現在のツール バー コントロールの配色を設定します。
CToolBarCtrl::SetDisabledImageList ツール バー コントロールが無効なボタンを表示するために使用するイメージ リストを設定します。
CToolBarCtrl::SetDrawTextFlags Win32 関数 DrawTextのフラグを設定します。これは、指定した四角形内のテキストを描画するために使用され、フラグの設定方法に従って書式設定されます。
CToolBarCtrl::SetExtendedStyle ツール バー コントロールの拡張スタイルを設定します。
CToolBarCtrl::SetHotImageList ツール バー コントロールが "ホット" ボタンの表示に使用するイメージ リストを設定します。
CToolBarCtrl::SetHotItem ツール バーのホットアイテムを設定します。
CToolBarCtrl::SetImageList 既定の状態のボタンを表示するためにツール バーが使用するイメージ リストを設定します。
CToolBarCtrl::SetIndent ツール バー コントロールの最初のボタンのインデントを設定します。
CToolBarCtrl::SetInsertMark ツール バーの現在の挿入マークを設定します。
CToolBarCtrl::SetInsertMarkColor ツールバーの挿入マークの描画に使用する色を設定します。
CToolBarCtrl::SetMaxTextRows ツール バー ボタンに表示されるテキスト行の最大数を設定します。
CToolBarCtrl::SetMetrics ツール バー コントロールのメトリックを設定します。
CToolBarCtrl::SetOwner ツール バー コントロールから通知メッセージを受信するウィンドウを設定します。
CToolBarCtrl::SetPadding 現在のツール バー コントロールの水平方向と垂直方向のパディングを設定します。
CToolBarCtrl::SetPressedImageList 現在のツール バー コントロールが押された状態のボタンを表すために使用するイメージ リストを設定します。
CToolBarCtrl::SetRows ツール バーに表示されるボタンの行数を設定します。
CToolBarCtrl::SetState ツール バー コントロールの指定したボタンの状態を設定します。
CToolBarCtrl::SetStyle ツール バー コントロールのスタイルを設定します。
CToolBarCtrl::SetToolTips ツール ヒント コントロールをツール バー コントロールに関連付けます。
CToolBarCtrl::SetWindowTheme ツール バー コントロールの表示スタイルを設定します。

解説

このコントロール (したがって CToolBarCtrl 、クラス) は、Windows 95/98 および Windows NT バージョン 3.51 以降で実行されているプログラムでのみ使用できます。

Windows ツール バーの共通コントロールは、1 つ以上のボタンを含む四角形の子ウィンドウです。 これらのボタンは、ビットマップ イメージ、文字列、またはその両方を表示できます。 ユーザーがボタンを選択すると、ツール バーの所有者ウィンドウにコマンド メッセージが送信されます。 通常、ツール バーのボタンは、アプリケーションのメニューの項目に対応します。ユーザーがアプリケーションのコマンドにアクセスするためのより直接的な方法が提供されます。

CToolBarCtrl オブジェクトには、ボタンイメージビットマップまたはイメージリストのリスト、ボタンラベル文字列のリスト、およびボタンの TBBUTTON 位置、スタイル、状態、およびコマンドIDに画像や文字列を関連付ける構造のリストなど、いくつかの重要な内部データ構造が含まれています。 これらのデータ構造の各要素は、0 から始まるインデックスで参照されます。 CToolBarCtrl オブジェクトを使用するには、あらかじめこれらのデータ構造を設定しておく必要があります。 文字列のリストはボタンラベルにのみ使用できます。ツールバーから文字列を取得することはできません。

オブジェクトを CToolBarCtrl 使用するには、通常、次の手順に従います。

  1. CToolBarCtrl オブジェクトを構築します。

  2. Windows ツール バーの共通コントロールを作成し、オブジェクトにアタッチするCToolBarCtrl呼び出Createし。 透明なツール バーやTBSTYLE_DROPDOWNドロップダウン スタイル ボタンをサポートするツール バーなどTBSTYLE_TRANSPARENT、スタイルを使用してツール バーのスタイルを指定します。

  3. ツール バーのボタンを表示する方法を特定します。

    • ボタンにビットマップ イメージを使用するには、ボタンビットマップをツールバー AddBitmapに追加します。

    • ボタンのイメージ リストから表示されるイメージを使用するには、呼び出 SetImageListし、 SetHotImageListまたは SetDisabledImageList.

    • ボタンに文字列ラベルを使用するには、ツールバー AddStringAddStringsに文字列を追加します。

  4. を呼び出 AddButtonsして、ツール バーにボタン構造を追加します。

  5. 所有者ウィンドウのツールバー ボタンのツール ヒントが必要な場合はCFrameWnd、「ツール ヒント通知の処理」の説明に従って、ツール バーの所有者ウィンドウのメッセージを処理TTN_NEEDTEXTする必要があります。 ツールバーの親ウィンドウが派生 CFrameWndしている場合、ツール ヒントは既定のハンドラーを提供するため CFrameWnd 、追加の作業なしで表示されます。

  6. ツール バーをユーザーがカスタマイズできるようにしたい場合は、「カスタマイズ通知の処理」の説明に従って、オーナー ウィンドウでカスタマイズ通知メッセージを処理します。

ツール バー コントロールの現在の状態をレジストリに保存し、RestoreStateレジストリに以前に格納された情報に基づいて状態を復元するために使用SaveStateできます。 アプリケーションの使用間でツール バーの状態を保存するだけでなく、ユーザーが後でツール バーを元の状態に復元する場合に備えて、ユーザーがツール バーのカスタマイズを開始する前に、通常、アプリケーションによって状態が格納されます。

インターネット エクスプローラー バージョン 4.0 以降のサポート

インターネット エクスプローラー バージョン 4.0 以降で導入された機能をサポートするために、MFC では、ツール バー コントロールのイメージ リストのサポートと透明なスタイルとフラット なスタイルが提供されています。

透明なツール バーを使用すると、ツール バーの下にあるクライアントを表示できます。 透明なツールバーを作成するには、両方 TBSTYLE_FLAT のスタイルを TBSTYLE_TRANSPARENT 使用します。 透明なツールバーはホットトラッキングを備えます。つまり、マウス ポインターがツール バーのホット ボタンの上に移動すると、ボタンの外観が変わります。 スタイルのみを使用して作成された TBSTYLE_FLAT ツールバーには、透明ではないボタンが含まれます。

イメージ リストのサポートにより、既定の動作、ホット イメージ、および無効なイメージに対する柔軟性が向上します。 をGetHotImageList使用しGetDisabledImageList、透明なツール バーを使用GetImageListして、状態に応じてイメージを操作します。

使用の詳細については、「コントロールと使用CToolBarCtrl」を参照CToolBarCtrlしてください

継承階層

CObject

CCmdTarget

CWnd

CToolBarCtrl

必要条件

ヘッダー:afxcmn.h

CToolBarCtrl::AddBitmap

ツール バー コントロールに格納されているボタン イメージの一覧に、1 つ以上のボタンイメージを追加します。

int AddBitmap(
    int nNumButtons,
    UINT nBitmapID);

int AddBitmap(
    int nNumButtons,
    CBitmap* pBitmap);

パラメーター

nNumButtons
ビットマップ内のボタン イメージの数。

nBitmapID
追加するボタンイメージを含むビットマップのリソース識別子。

pBitmap
追加するボタンイメージ CBitmap を含むオブジェクトへのポインター。

戻り値

成功した場合の最初の新しいイメージの 0 から始まるインデックス。それ以外の場合 - 1。

解説

ツール バーにビットマップを追加する前に、Windows API CreateMappedBitmap を使用して色をマップできます。 オブジェクトへのポインターを CBitMap 渡す場合は、ツール バーが破棄されるまでビットマップが破棄されないようにする必要があります。

CToolBarCtrl::AddButtons

ツール バー コントロールに 1 つ以上のボタンを追加します。

BOOL AddButtons(
    int nNumButtons,
    LPTBBUTTON lpButtons);

パラメーター

nNumButtons
追加するボタンの数。

lpButtons
追加するボタンに TBBUTTON 関する情報を含む構造体の配列のアドレス。 配列内の要素の数は、次で指定した nNumButtonsボタンと同じである必要があります。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

ポインターは lpButtons 構造体の TBBUTTON 配列を指します。 各 TBBUTTON 構造体は、追加するボタンをボタンのスタイル、画像や文字列、コマンド ID、状態、およびユーザー定義データに関連付けます。

typedef struct _TBBUTTON {
    int iBitmap;    // zero-based index of button image
    int idCommand;  // command to be sent when button pressed
    BYTE fsState;   // button state--see below
    BYTE fsStyle;   // button style--see below
    DWORD dwData;   // application-defined value
    int iString;    // zero-based index of button label string
} TBBUTTON;

メンバーは次のとおりです。

  • iBitmap

    ボタン イメージの 0 から始まるインデックス。このボタンの画像がない場合は -1。

  • idCommand

    ボタンに関連付けられているコマンド識別子。 この識別子は、ボタンが WM_COMMAND 選択されたときにメッセージで送信されます。 メンバーに fsStyle 値がある TBSTYLE_SEP 場合、このメンバーは 0 である必要があります。

  • fsState

    ボタン状態フラグ。 次に示す値の組み合わせを指定できます。

    • TBSTATE_CHECKED ボタンにはスタイルがあり TBSTYLE_CHECKED 、押されています。

    • TBSTATE_ENABLED ボタンはユーザー入力を受け入れます。 この状態ではないボタンは、ユーザー入力を受け付けず、灰色で表示されます。

    • TBSTATE_HIDDEN ボタンは表示されず、ユーザー入力を受け取ることはできません。

    • TBSTATE_INDETERMINATE ボタンは灰色で表示されます。

    • TBSTATE_PRESSED ボタンが押されています。

    • TBSTATE_WRAP ボタンの後に改行が続きます。 ボタンの状態も TBSTATE_ENABLED 必要です。

  • fsStyle

    ボタンのスタイル。 次に示す値の組み合わせを指定できます。

    • TBSTYLE_BUTTON 標準のプッシュ ボタンを作成します。

    • TBSTYLE_CHECK ユーザーがクリックするたびに押された状態と押されていない状態を切り替えるボタンを作成します。 ボタンが押された状態の場合、ボタンの背景色が異なります。

    • TBSTYLE_CHECKGROUPグループ内の別のボタンが押されるまで押された状態を維持するチェック ボタンを作成します。

    • TBSTYLE_GROUP グループ内の別のボタンが押されるまで押された状態を維持するボタンを作成します。

    • TBSTYLE_SEP ボタン グループ間に小さなギャップを提供する区切り記号を作成します。 このスタイルのボタンは、ユーザー入力を受け取りません。

  • dwData

    ユーザー定義データ。

  • iString

    ボタンのラベルとして使用する文字列の 0 から始まるインデックス。このボタンの文字列がない場合は -1。

指定するインデックスを持つイメージや文字列が、以前にツール バー コントロールのリストに追加されている必要があります。AddBitmapAddStringAddStrings

CToolBarCtrl::AddString

リソース ID として渡される新しい文字列を、ツール バーの文字列の内部リストに追加します。

int AddString(UINT nStringID);

パラメーター

nStringID
ツール バー コントロールの文字列リストに追加する文字列リソースのリソース識別子。

戻り値

成功した場合に追加された最初の新しい文字列の 0 から始まるインデックス。それ以外の場合は -1。

CToolBarCtrl::AddStrings

ツール バー コントロールで使用できる文字列の一覧に、新しい文字列または文字列を追加します。

int AddStrings(LPCTSTR lpszStrings);

パラメーター

lpszStrings
ツール バーの文字列リストに追加する 1 つ以上 NULLの終了文字列を含むバッファーのアドレス。 最後の文字列は 2 文字 NULL で終了する必要があります。

戻り値

成功した場合に追加された最初の新しい文字列の 0 から始まるインデックス。それ以外の場合は -1。

解説

バッファー内の文字列は、文字で区切る NULL 必要があります。 最後の文字列に 2 つの NULL ターミネータがあることを確認する必要があります。 定数文字列を適切に書式設定するには、次のように記述します。

// one null added automatically
lpszStrings = _T("Only one string to add\0");

または

// adds three strings with one call
lpszStrings = _T("String 1\0String 2\0String 3\0");

1 つの関数に複数NULLの文字を含めることはできませんので、この関数にオブジェクトをCStringCStringさないでください。

CToolBarCtrl::AutoSize

ツール バー コントロール全体のサイズを変更します。

void AutoSize();

解説

この関数は、親ウィンドウのサイズが変更されたとき、またはツール バーのサイズが変更されたときに呼び出す必要があります (ボタンやビットマップ サイズの設定、文字列の追加など)。

CToolBarCtrl::ChangeBitmap

現在のツール バー コントロールのボタンのビットマップを変更します。

BOOL ChangeBitmap(
    int idButton,
    int iBitmap);

パラメーター

idButton
[in]新しいビットマップを受け取るボタンのコマンド識別子。

iBitmap
[in]現在のツール バー コントロールのイメージ リスト内のイメージの 0 から始まるインデックス。

戻り値

TRUEこのメソッドが成功した場合。それ以外の場合は . FALSE

解説

このメソッドが成功した場合、指定したボタンに指定したイメージが表示されます。

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_CHANGEBITMAP します。

次のコード例では、[ファイルの保存] ボタンのビットマップを [バージョン情報] ボタンのビットマップに変更します。

{
   // Change the bitmap for the File Save button, whose
   // command ID is ID_FILE_SAVE, to the bitmap for the
   // About button, whose index is 7.
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   BOOL bRet = m_toolBarCtrl.ChangeBitmap(ID_FILE_SAVE, 7);
}

CToolBarCtrl::CheckButton

ツール バー コントロールの特定のボタンをオンまたはオフにします。

BOOL CheckButton(
    int nID,
    BOOL bCheck = TRUE);

パラメーター

nID
チェックまたはクリアするボタンのコマンド識別子。

bCheck
TRUEをクリックしてボタンをチェックし、FALSEボタンをクリアします。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

ボタンがチェックされると、ボタンが押されたように見えます。 複数のボタンの状態を変更する場合は、代わりに呼び出し SetState を検討してください。

CToolBarCtrl::CommandToIndex

指定したコマンド識別子に関連付けられているボタンの 0 から始まるインデックスを取得します。

UINT CommandToIndex(UINT nID) const;

パラメーター

nID
ボタンインデックスを検索するコマンド ID。

戻り値

コマンド ID に関連付けられているボタンの 0 から始まるインデックス。

解説

CToolBarCtrl::Create

ツール バー コントロールを作成し、オブジェクトに CToolBarCtrl アタッチします。

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

パラメーター

dwStyle
ツール バー コントロールのスタイルを指定します。 ツール バーには常にスタイルが WS_CHILD 必要です。 また、[解説] で説明されているように、ツール バー スタイルとウィンドウ スタイルの任意の組み合わせを指定できます。

rect
必要に応じて、ツール バー コントロールのサイズと位置を指定します。 オブジェクトまたはRECT構造体をCRect指定できます。

pParentWnd
ツール バー コントロールの親ウィンドウを指定します。 次に指定 NULLすることはできません。

nID
ツール バー コントロールの ID を指定します。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

2 つの手順で作成 CToolBarCtrl します。 まず、コンストラクターを呼び出し、次に呼び出 Createします。これにより、ツール バー コントロールが作成され、オブジェクトに CToolBarCtrl アタッチされます。 ツール バー コントロールに次のウィンドウ スタイルを適用します。

  • WS_CHILD いつも

  • WS_VISIBLE 通常は

  • WS_DISABLED ほとんど

ウィンドウ スタイルの説明については、Windows SDK を参照 CreateWindow してください。

必要に応じて、Windows SDK の説明に従って、共通のコントロール スタイル組み合わせを適用します。

コントロールまたはボタン自体にツール バー スタイルの組み合わせを適用します。 これらのスタイルについては、「Windows SDK のツール バー コントロールとボタンのスタイル」を参照してください。

拡張ツール バー スタイルを使用するには、呼び出した後に呼び出 SetExtendedStyle します Create。 拡張ウィンドウ スタイルのツール バーを作成するには、代わりにCreate呼び出しますCToolBarCtrl::CreateEx

ツール バー コントロールは、ツール バー ウィンドウのサイズと位置を自動的に設定します。 高さは、ツールバーのボタンの高さに基づいています。 幅は、親ウィンドウのクライアント領域の幅と同じです。 ツール CCS_TOP バーがクライアント領域の上部と下部のどちらに沿って配置されているかは、スタイル CCS_BOTTOM によって決まります。 既定では、ツール バーにはスタイルがあります CCS_TOP

CToolBarCtrl::CreateEx

コントロール (子ウィンドウ) を作成し、オブジェクトに CToolBarCtrl 関連付けます。

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

パラメーター

dwExStyle
作成するコントロールの拡張スタイルを指定します。 拡張 Windows スタイルの一覧については、Windows SDK の dwExStyle パラメーター CreateWindowEx を参照してください。

dwStyle
ツール バー コントロールのスタイルを指定します。 ツール バーには常にスタイルが WS_CHILD 必要です。 また、ツールバースタイルとウィンドウスタイルCreateの任意の組み合わせを指定できます。

rect
作成するウィンドウの RECT サイズと位置をクライアント座標 pParentWndで記述する構造体への参照。

pParentWnd
コントロールの親であるウィンドウへのポインター。

nID
コントロールの子ウィンドウ ID。

戻り値

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

解説

Windows 拡張スタイルのCreate前書WS_EX_きで指定された拡張 Windows スタイルを適用する代わりに使用CreateExします。 CreateEx によって指定された拡張 Windows スタイルを使用してコントロールを作成します dwExStyle。 を使用して SetExtendedStyleコントロールに固有の拡張スタイルを設定します。 たとえば、このようなスタイルWS_EX_CONTEXTHELPを設定する場合に使用CreateExしますが、次のようなTBSTYLE_EX_DRAWDDARROWSスタイルを設定するために使用SetExtendedStyleします。 詳細については、「Windows SDK のツール バー拡張スタイル」で 説明されているスタイル を参照してください。

CToolBarCtrl::CToolBarCtrl

CToolBarCtrl オブジェクトを構築します。

CToolBarCtrl();

解説

ツール バーを使用できるようにするには、呼び出す Create 必要があります。

CToolBarCtrl::Customize

[ツール バーのカスタマイズ] ダイアログ ボックスを表示します。

void Customize();

解説

このダイアログ ボックスを使用すると、ユーザーはボタンを追加および削除してツール バーをカスタマイズできます。 カスタマイズをサポートするには、「カスタマイズ通知の処理」の説明に従って、ツール バーの親ウィンドウで カスタマイズ通知メッセージを処理する必要があります。 で説明CToolBarCtrl::Createされているように、ツール バーもスタイルでCCS_ADJUSTABLE作成されている必要があります。

CToolBarCtrl::DeleteButton

ツール バー コントロールからボタンを削除します。

BOOL DeleteButton(int nIndex);

パラメーター

nIndex
削除するボタンの 0 から始まるインデックス。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

CToolBarCtrl::EnableButton

ツール バー コントロールの指定したボタンを有効または無効にします。

BOOL EnableButton(
    int nID,
    BOOL bEnable = TRUE);

パラメーター

nID
有効または無効にするボタンのコマンド識別子。

bEnable
ボタンを有効にする場合は TRUE、無効にする場合は FALSE です。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

ボタンが有効になっている場合は、ボタンを押してチェックできます。 複数のボタンの状態を変更する場合は、代わりに呼び出し SetState を検討してください。

CToolBarCtrl::GetAnchorHighlight

ツール バーのアンカー強調表示設定を取得します。

BOOL GetAnchorHighlight() const;

戻り値

0 以外の場合、アンカーの強調表示が有効になります。 ゼロの場合、アンカーの強調表示は無効になります。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETANCHORHIGHLIGHTの動作を実装します。

CToolBarCtrl::GetBitmap

ツール バーのボタンに関連付けられているビットマップのインデックスを取得します。

int GetBitmap(int nID) const;

パラメーター

nID
ビットマップ インデックスを取得するボタンのコマンド識別子。

戻り値

成功した場合はビットマップのインデックスを返し、それ以外の場合は 0 を返します。

解説

Windows SDK の機能 TB_GETBITMAP を実装します。

CToolBarCtrl::GetBitmapFlags

ツール バーからビットマップ フラグを取得します。

UINT GetBitmapFlags() const;

戻り値

UINT表示で大きなツール バー ビットマップをサポートできる場合はTBBF_LARGEフラグが設定され、それ以外の場合はクリアされます。

解説

ツール バーを作成した後、ツール バーにビットマップを追加する前に呼び出す必要があります。 戻り値は、表示で大きなビットマップがサポートされているかどうかを示します。 ディスプレイが大きなビットマップをサポートしていて、それらを使用することを選択した場合は、 を使用してAddBitmap大きなビットマップを追加する前に呼び出SetBitmapSizeSetButtonSizeします。

CToolBarCtrl::GetButton

ツール バー コントロール内の指定したボタンに関する情報を取得します。

BOOL GetButton(
    int nIndex,
    LPTBBUTTON lpButton) const;

パラメーター

nIndex
情報を取得するボタンの 0 から始まるインデックス。

lpButton
ボタン情報の TBBUTTON コピーを受信する構造体のアドレス。 構造の詳細については、以下をTBBUTTON参照してくださいCToolBarCtrl::AddButtons

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

CToolBarCtrl::GetButtonCount

現在ツール バー コントロールにあるボタンの数を取得します。

int GetButtonCount() const;

戻り値

ボタンの数。

CToolBarCtrl::GetButtonInfo

ツール バーのボタンの情報を取得します。

int GetButtonInfo(
    int nID,
    TBBUTTONINFO* ptbbi) const;

パラメーター

nID
ボタン識別子。

ptbbi
ボタン情報を TBBUTTONINFO 受け取る構造体へのポインター。

戻り値

成功した場合は、ボタンの 0 から始まるインデックス。それ以外の場合は -1。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETBUTTONINFOの動作を実装します。

CToolBarCtrl::GetButtonSize

ツール バー ボタンのサイズを取得します。

DWORD GetButtonSize() const;

戻り値

DWORD and の幅と高さの値をそれぞれ含む値LOWORDHIWORD

CToolBarCtrl::GetButtonText

現在のツール バー コントロールの指定したボタンの表示テキストを取得します。

CString GetButtonText(int idButton) const;

パラメーター

idButton
[in]表示テキストが取得されるボタンの識別子。

戻り値

指定したボタンの表示テキストを含む A CString

解説

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_GETBUTTONTEXT します。

CToolBarCtrl::GetColorScheme

現在のツール バー コントロールの配色を取得します。

BOOL GetColorScheme(COLORSCHEME* lpColorScheme) const;

パラメーター

lpColorScheme
[out]配色情報を COLORSCHEME 受け取る構造体へのポインター。 このメソッドが返されると、構造体はツール バー コントロールの強調表示の色と影の色を記述します。

戻り値

TRUEこのメソッドが成功した場合。それ以外の場合は . FALSE

解説

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_GETCOLORSCHEME します。

CToolBarCtrl::GetDisabledImageList

ツール バー コントロールが無効なボタンを表示するために使用するイメージの一覧を取得します。

CImageList* GetDisabledImageList() const;

戻り値

オブジェクトへの CImageList ポインター、または NULL 無効なイメージ リストが設定されていない場合。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETDISABLEDIMAGELISTの動作を実装します。 MFC の実装では、CImageListイメージ リストへのGetDisabledImageListハンドルではなく、ツール バー コントロールのボタン イメージを含むオブジェクトを使用します。

CToolBarCtrl::GetDropTarget

ツール バー コントロールの IDropTarget インターフェイスを取得します。

HRESULT GetDropTarget(IDropTarget** ppDropTarget) const;

パラメーター

ppDropTarget
IDropTarget インターフェイス ポインターを指すポインター。 エラーが発生した場合は、 NULL このアドレスにポインターが配置されます。

戻り値

操作の HRESULT 成功または失敗を示す値を返します。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETOBJECTの動作を実装します。

CToolBarCtrl::GetExtendedStyle

ツール バー コントロールの拡張スタイルを取得します。

DWORD GetExtendedStyle() const;

戻り値

ツールバー コントロールに現在使用されている拡張スタイルを表す A DWORD 。 スタイルの一覧については、Windows SDK の「ツール バー拡張スタイル」を参照してください

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETEXTENDEDSTYLEの動作を実装します。

CToolBarCtrl::GetHotImageList

ツール バー コントロールが "ホット" ボタンを表示するために使用するイメージの一覧を取得します。 マウス ポインターが上にあると、ホット ボタンが強調表示されます。

CImageList* GetHotImageList() const;

戻り値

オブジェクトへの CImageList ポインター、または NULL 無効なイメージ リストが設定されていない場合。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETHOTIMAGELISTの動作を実装します。 マウス ポインターが上にあると、ホット ボタンが強調表示されます。

CToolBarCtrl::GetHotItem

ツール バーのホットアイテムのインデックスを取得します。

int GetHotItem() const;

戻り値

ツール バーのホットアイテムの 0 から始まるインデックス。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETHOTITEMの動作を実装します。

CToolBarCtrl::GetImageList

ツール バー コントロールが既定の状態でボタンを表示するために使用するイメージリストを取得します。

CImageList* GetImageList() const;

戻り値

オブジェクトへの CImageList ポインター、または NULL イメージ リストが設定されていない場合。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETIMAGELISTの動作を実装します。

CToolBarCtrl::GetInsertMark

ツール バーの現在の挿入マークを取得します。

void GetInsertMark(TBINSERTMARK* ptbim) const;

パラメーター

ptbim
挿入マークを TBINSERTMARK 受け取る構造体へのポインター。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETINSERTMARKの動作を実装します。

CToolBarCtrl::GetInsertMarkColor

ツール バーの挿入マークの描画に使用する色を取得します。

COLORREF GetInsertMarkColor() const;

戻り値

現在の COLORREF 挿入マークの色を含む値。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETINSERTMARKCOLORの動作を実装します。

CToolBarCtrl::GetItemRect

ツール バー コントロール内のボタンの外接する四角形を取得します。

BOOL GetItemRect(
    int nIndex,
    LPRECT lpRect) const;

パラメーター

nIndex
情報を取得するボタンの 0 から始まるインデックス。

lpRect
外接する四角形の RECT 座標を CRect 受け取る構造体またはオブジェクトのアドレス。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

この関数は、状態が に設定されているボタンの外接する四角形を TBSTATE_HIDDEN取得しません。

CToolBarCtrl::GetMaxSize

ツール バーに表示されているすべてのボタンと区切り記号の合計サイズを取得します。

BOOL GetMaxSize(LPSIZE pSize) const;

パラメーター

pSize
項目のサイズを SIZE 受け取る構造体へのポインター。

戻り値

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

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETMAXSIZEの動作を実装します。

CToolBarCtrl::GetMaxTextRows

ツール バー ボタンに表示されるテキスト行の最大数を取得します。

int GetMaxTextRows() const;

戻り値

ツール バー ボタンに表示されるテキスト行の最大数。

CToolBarCtrl::GetMetrics

オブジェクトのメトリックを CToolBarCtrl 取得します。

void GetMetrics(LPTBMETRICS ptbm) const;

パラメーター

ptbm
オブジェクトのTBMETRICSCToolBarCtrl構造へのポインター。

解説

このメンバー関数は、Windows SDK で説明されているように、メッセージの TB_GETMETRICS 機能をエミュレートします。

CToolBarCtrl::GetPadding

現在のツール バー コントロールの水平方向と垂直方向のパディングを取得します。

BOOL GetPadding(
    int* pnHorzPadding,
    int* pnVertPadding) const;

パラメーター

pnHorzPadding
[out]ツールバー コントロールの水平方向のパディングを受け取る整数 (ピクセル単位)。

pnVertPadding
[out]ツールバー コントロールの垂直方向のパディングをピクセル単位で受け取る整数。

戻り値

TRUEこのメソッドが成功した場合。それ以外の場合は . FALSE

解説

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_GETPADDING します。

CToolBarCtrl::GetPressedImageList

現在のツール バー コントロールが押された状態のボタンを表すために使用する画像リストを取得します。

CImageList* GetPressedImageList();

戻り値

現在のコントロールのイメージ リストを含む a CImageList へのポインター。または NULL 、そのようなイメージ リストが設定されていない場合。

解説

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_GETPRESSEDIMAGELIST します。

CToolBarCtrl::GetRect

指定したツール バー ボタンの外接する四角形を取得します。

BOOL GetRect(
    int nID,
    LPRECT lpRect) const;

パラメーター

nID
ボタン識別子。

lpRect
外接する四角形情報を受け取る構造体へのポインター RECT

戻り値

成功した場合は TRUE。それ以外の場合は FALSE

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETRECTの動作を実装します。

CToolBarCtrl::GetRows

ツール バー コントロールによって現在表示されているボタンの行数を取得します。

int GetRows() const;

戻り値

現在ツール バーに表示されているボタンの行数。

解説

スタイルでツール バーが作成されていない限り、行数は常に TBSTYLE_WRAPABLE 1 になります。

CToolBarCtrl::GetState

ツール バー コントロールの指定したボタンの状態に関する情報 (有効、押された、またはチェックかどうかなど) を取得します。

int GetState(int nID) const;

パラメーター

nID
情報を取得するボタンのコマンド識別子。

戻り値

成功した場合はボタンの状態情報。それ以外の場合は -1。 ボタンの状態情報は、次に示す CToolBarCtrl::AddButtons値の組み合わせにすることができます。

解説

この関数は、複数のボタンの状態を取得する場合に特に便利です。 状態を 1 つだけ取得するには、次のいずれかのメンバー関数をIsButtonIndeterminateIsButtonHiddenIsButtonPressedIsButtonChecked使用します。 IsButtonEnabled ただし、ボタンの状態を GetState 検出する唯一の TBSTATE_WRAP 方法は、メンバー関数です。

CToolBarCtrl::GetString

ツール バー文字列を取得します。

int GetString(
    int nString,
    LPTSTR lpstrString,
    int cchMaxLen) const;

int GetString(
    int nString,
    CString& str) const;

パラメーター

nString
文字列のインデックス。

lpstrString
文字列を返すために使用されるバッファーへのポインター。

cchMaxLen
バッファーの長さ (バイト単位)。

str
文字列です。

戻り値

成功した場合は文字列の長さ、そうでない場合は -1。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_GETSTRINGの動作を実装します。

CToolBarCtrl::GetStyle

ツール バー コントロールに現在適用されているスタイルを取得します。

DWORD GetStyle() const;

戻り値

DWORD Windows SDK で説明されているように、ツール バー コントロール スタイル組み合わせを含む。

CToolBarCtrl::GetToolTips

ツール バー コントロールに関連付けられているツール ヒント コントロールのハンドル (存在する場合) を取得します。

CToolTipCtrl* GetToolTips() const;

戻り値

このツール バーに CToolTipCtrl 関連付けられているオブジェクトへのポインター、または NULL ツール バーにツール ヒント コントロールが関連付けられていない場合。

解説

ツールバー コントロールは通常、独自のツール ヒント コントロールを作成してメインするため、ほとんどのプログラムでこの関数を呼び出す必要はありません。

CToolBarCtrl::HitTest

ツール バー コントロール内のポイントの位置を決定します。

int HitTest(LPPOINT ppt) const;

パラメーター

ppt
メンバー内 POINT のヒット テストの x 座標と、メンバー内 x のヒット y テストの y 座標を含む構造体へのポインター。 座標は、ツール バーのクライアント領域を基準にしています。

戻り値

ツール バー上のポイントの位置を示す整数値。 値が 0 または正の値の場合、この戻り値は、ポイントが存在する非セパレーター項目の 0 から始まるインデックスです。

戻り値が負の場合、ポイントはボタン内にありません。 戻り値の絶対値は、区切り記号項目または最も近い非セパレーター項目のインデックスです。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_HITTESTの動作を実装します。

CToolBarCtrl::HideButton

ツール バー コントロールの指定したボタンを非表示または表示します。

BOOL HideButton(
    int nID,
    BOOL bHide = TRUE);

パラメーター

nID
非表示または表示するボタンのコマンド識別子。

bHide
TRUE ボタンを非表示にする場合は、 FALSE ボタンを表示します。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

複数のボタンの状態を変更する場合は、代わりに呼び出し SetState を検討してください。

CToolBarCtrl::Indeterminate

ツール バー コントロールの指定したボタンの不確定な状態を設定またはクリアします。

BOOL Indeterminate(
    int nID,
    BOOL bIndeterminate = TRUE);

パラメーター

nID
不確定な状態が設定またはクリアされるボタンのコマンド識別子。

bIndeterminate
TRUE をクリックすると、指定したボタンの不確定な状態が設定され、 FALSE クリアされます。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

不確定なボタンは灰色で表示されます。たとえば、選択したテキストに太字と標準文字の両方が含まれている場合に、ワード プロセッサのツール バーの太字ボタンが表示されます。 複数のボタンの状態を変更する場合は、代わりに呼び出し SetState を検討してください。

CToolBarCtrl::InsertButton

ツール バー コントロールにボタンを挿入します。

BOOL InsertButton(
    int nIndex,
    LPTBBUTTON lpButton);

パラメーター

nIndex
ボタンの 0 から始まるインデックス。 この関数は、このボタンの左側に新しいボタンを挿入します。

lpButton
挿入する TBBUTTON ボタンに関する情報を含む構造体のアドレス。 構造の説明については、以下をTBBUTTON参照してくださいCToolBarCtrl::AddButtons

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

指定するインデックスを持つイメージや文字列が、以前にツール バー コントロールのリストに追加されている必要があります。AddBitmapAddStringAddStrings

CToolBarCtrl::InsertMarkHitTest

ツール バー内のポイントの挿入マーク情報を取得します。

BOOL InsertMarkHitTest(
    LPPOINT ppt,
    LPTBINSERTMARK ptbim) const;

パラメーター

ppt
ツール バーの POINT クライアント領域を基準としたヒット テスト座標を含む構造体へのポインター。

ptbim
挿入マーク情報を TBINSERTMARK 受け取る構造体へのポインター。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_INSERTMARKHITTESTの動作を実装します。

CToolBarCtrl::IsButtonChecked

ツール バー コントロール内の指定したボタンがチェックされているかどうかを判断します。

BOOL IsButtonChecked(int nID) const;

パラメーター

nID
ツール バーのボタンのコマンド識別子。

戻り値

ボタンがチェックされている場合は 0 以外、それ以外の場合は 0。

解説

複数のボタンの状態を取得する場合は、呼び出し GetState を検討してください。

CToolBarCtrl::IsButtonEnabled

ツール バー コントロールの指定したボタンが有効かどうかを判断します。

BOOL IsButtonEnabled(int nID) const;

パラメーター

nID
ツール バーのボタンのコマンド識別子。

戻り値

ボタンが有効な場合は 0 以外。それ以外の場合は 0。

解説

複数のボタンの状態を取得する場合は、呼び出し GetState を検討してください。

CToolBarCtrl::IsButtonHidden

ツール バー コントロール内の指定したボタンを非表示にするかどうかを指定します。

BOOL IsButtonHidden(int nID) const;

パラメーター

nID
ツール バーのボタンのコマンド識別子。

戻り値

ボタンが非表示の場合は 0 以外。それ以外の場合は 0。

解説

複数のボタンの状態を取得する場合は、呼び出し GetState を検討してください。

CToolBarCtrl::IsButtonHighlighted

ツール バー ボタンの強調表示の状態を確認します。

BOOL IsButtonHighlighted(int nID) const;

パラメーター

nID
[in]ツール バー ボタンのコマンド ID。

戻り値

ボタンが強調表示されている場合は正の整数、ボタンが強調表示されていない場合は 0、エラーが発生した場合は -1。

CToolBarCtrl::IsButtonIndeterminate

ツール バー コントロール内の指定したボタンが不確定かどうかを判断します。

BOOL IsButtonIndeterminate(int nID) const;

パラメーター

nID
[in]ツール バーのボタンのコマンド識別子。

戻り値

ボタンが不確定の場合は正の整数、ボタンが不確定でない場合はゼロ、エラーが発生した場合は -1。

解説

不確定なボタンは淡色表示されます。たとえば、選択したテキストに太字と標準文字の両方が含まれている場合に、ワード プロセッサのツール バーの太字ボタンが表示されます。 複数のボタンの状態を取得する場合は、呼び出し GetState を検討してください。

CToolBarCtrl::IsButtonPressed

ツール バー コントロール内の指定したボタンが押されているかどうかを判断します。

BOOL IsButtonPressed(int nID) const;

パラメーター

nID
ツール バーのボタンのコマンド識別子。

戻り値

ボタンが押された場合は 0 以外、それ以外の場合は 0。

解説

複数のボタンの状態を取得する場合は、呼び出し GetState を検討してください。

CToolBarCtrl::LoadImages

ツール バー コントロールのイメージ リストにビットマップを読み込みます。

void LoadImages(
    int iBitmapID,
    HINSTANCE hinst);

パラメーター

iBitmapID
読み込むイメージを含むビットマップの ID。 独自のビットマップ リソースを指定するには、このパラメーターをビットマップ リソースの ID に設定し、 hInstNULL. ビットマップ リソースが 1 つのイメージとしてイメージ リストに追加されます。 標準のシステム定義ビットマップを追加するには、このパラメーターを次のいずれかの ID にHINST_COMMCTRL設定hinstして設定します。

ビットマップ ID 説明
IDB_HIST_LARGE_COLOR 大きなサイズのビットマップをエクスプローラーする
IDB_HIST_SMALL_COLOR ビットマップを小さいサイズでエクスプローラーする
IDB_STD_LARGE_COLOR 大きなサイズの標準ビットマップ
IDB_STD_SMALL_COLOR 小さいサイズの標準ビットマップ
IDB_VIEW_LARGE_COLOR ビットマップを大きなサイズで表示する
IDB_VIEW_SMALL_COLOR ビットマップを小さいサイズで表示する

hinst
呼び出し元アプリケーションへのプログラム インスタンス ハンドル。 このパラメーターは、 HINST_COMMCTRL 標準イメージ リストを読み込む場合があります。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_LOADIMAGESの動作を実装します。

CToolBarCtrl::MapAccelerator

ツール バー ボタンにアクセラレータ文字をマップします。

BOOL MapAccelerator(
    TCHAR chAccel,
    UINT* pIDBtn);

パラメーター

chAccel
マップするアクセラレータ文字。 この文字は、ボタンのテキストに下線が引かれるのと同じ文字です。

pIDBtn
で指定chAccelされたアクセラレータに対応するボタンのコマンド識別子を受け取る a へのUINTポインター。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_MAPACCELERATORの動作を実装します。

CToolBarCtrl::MarkButton

ツール バー コントロールの特定のボタンの強調表示の状態を設定します。

BOOL MarkButton(
    int nID,
    BOOL fHighlight = TRUE);

パラメーター

nID
ボタン識別子。

fHighlight
設定する強調表示の状態を指定します。 既定では、 TRUE. に FALSE設定すると、ボタンは既定の状態に設定されます。

戻り値

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

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_MARKBUTTONの動作を実装します。

CToolBarCtrl::MoveButton

あるインデックスから別のインデックスにボタンを移動します。

BOOL MoveButton(
    UINT nOldPos,
    UINT nNewPos);

パラメーター

nOldPos
移動するボタンの 0 から始まるインデックス。

nNewPos
ボタンの宛先の 0 から始まるインデックス。

戻り値

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

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_MOVEBUTTONの動作を実装します。

CToolBarCtrl::PressButton

ツール バー コントロールの指定したボタンを押すか離します。

BOOL PressButton(int nID, BOOL bPress = TRUE);

パラメーター

nID
[in]押すか離すボタンのコマンド識別子。

bPress
[in] TRUE 指定したボタンを押します。 FALSE をクリックして、指定したボタンを離します。 既定値は TRUE です。

戻り値

このメソッドが成功した場合は TRUE。それ以外の場合は FALSE

解説

複数のボタンの状態を変更する場合は、代わりに呼び出し SetState を検討してください。

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_PRESSBUTTON します。

CToolBarCtrl::ReplaceBitmap

現在のツール バー コントロール内の既存のビットマップを新しいビットマップに置き換えます。

BOOL ReplaceBitmap(LPTBREPLACEBITMAP pReplaceBitmap);

パラメーター

pReplaceBitmap
[in] TBREPLACEBITMAP 置き換えるビットマップと新しいビットマップを記述する構造体へのポインター。

戻り値

TRUEこのメソッドが成功した場合。それ以外の場合は . FALSE

解説

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_REPLACEBITMAP します。

次のコード例では、標準ツール バーのビットマップを別のビットマップに置き換えます。

{
   // Replace one toolbar bitmap with another.
   TBREPLACEBITMAP tbrb;
   tbrb.hInstOld = ::AfxGetInstanceHandle();
   tbrb.nIDOld = IDR_MAINFRAME;
   tbrb.hInstNew = ::AfxGetInstanceHandle();
   tbrb.nIDNew = IDR_MAINFRAME1;
   tbrb.nButtons = 8;
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   BOOL bRet = m_toolBarCtrl.ReplaceBitmap(&tbrb);
}

CToolBarCtrl::RestoreState

パラメーターで指定されたレジストリ内の場所から、ツール バー コントロールの状態を復元します。

void RestoreState(
    HKEY hKeyRoot,
    LPCTSTR lpszSubKey,
    LPCTSTR lpszValueName);

パラメーター

hKeyRoot
レジストリ内の現在開いているキー、または次の定義済みの予約済みハンドル値のいずれかを識別します。

  • HKEY_CLASSES_ROOT

  • HKEY_CURRENT_USER

  • HKEY_LOCAL_MACHINE

  • HKEY_USERS

lpszSubKey
値が NULL関連付けられているサブキーの名前を含む -terminated 文字列を指します。 このパラメーターには NULL 、空の文字列へのポインターを指定できます。 パラメーターが指定されている場合は NULL、パラメーターによって識別されるキーに値が hKeyRoot 追加されます。

lpszValueName
取得する値の名前を含む文字列を指します。 この名前の値がまだキーに存在しない場合、関数によってキーに追加されます。

CToolBarCtrl::SaveState

ツール バー コントロールの状態を、パラメーターで指定されたレジストリ内の場所に保存します。

void SaveState(
    HKEY hKeyRoot,
    LPCTSTR lpszSubKey,
    LPCTSTR lpszValueName);

パラメーター

hKeyRoot
レジストリ内の現在開いているキー、または次の定義済みの予約済みハンドル値のいずれかを識別します。

  • HKEY_CLASSES_ROOT

  • HKEY_CURRENT_USER

  • HKEY_LOCAL_MACHINE

  • HKEY_USERS

lpszSubKey
値が NULL関連付けられているサブキーの名前を含む -terminated 文字列を指します。 このパラメーターには NULL 、空の文字列へのポインターを指定できます。 パラメーターが指定されている場合は NULL、パラメーターによって識別されるキーに値が hKeyRoot 追加されます。

lpszValueName
設定する値の名前を含む文字列を指します。 この名前の値がまだキーに存在しない場合、関数によってキーに追加されます。

CToolBarCtrl::SetAnchorHighlight

ツールバーのアンカー強調表示設定を設定します。

BOOL SetAnchorHighlight(BOOL fAnchor = TRUE);

パラメーター

fAnchor
[in]アンカーの強調表示を有効または無効にするかどうかを指定します。 この値が 0 以外の場合、アンカーの強調表示が有効になります。 この値が 0 の場合、アンカーの強調表示は無効になります

戻り値

前のアンカー設定。 強調表示が有効になっている場合、この値は 0 以外です。 強調表示が有効になっていない場合、この値は 0 です。

解説

このメソッドは、Windows SDK で説明されているように、Win32 メッセージ TB_SETANCHORHIGHLIGHTの動作を実装します。

CToolBarCtrl::SetBitmapSize

ツール バー コントロールに追加するビットマップイメージの実際のサイズを設定します。

BOOL SetBitmapSize(CSize size);

パラメーター

size
ビットマップ画像の幅と高さ (ピクセル単位)。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

この関数は、ツール バーにビットマップを追加する前にのみ呼び出す必要があります。 アプリケーションがビットマップ サイズを明示的に設定しない場合、既定値は 16 x 15 ピクセルです。

CToolBarCtrl::SetButtonInfo

ツール バーの既存のボタンの情報を設定します。

BOOL SetButtonInfo(
    int nID,
    TBBUTTONINFO* ptbbi);

パラメーター

nID
ボタン識別子。

ptbbi
ボタン情報を TBBUTTONINFO 受け取る構造体へのポインター。

戻り値

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

解説

メンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETBUTTONINFOの動作を実装します。

CToolBarCtrl::SetButtonSize

ツール バー コントロールのボタンのサイズを設定します。

BOOL SetButtonSize(CSize size);

パラメーター

size
ボタンの幅と高さ (ピクセル単位)。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

ボタンのサイズは、常に、それが囲むビットマップ サイズと同じ大きさにする必要があります。 この関数は、ツール バーにビットマップを追加する前にのみ呼び出す必要があります。 アプリケーションでボタン のサイズが明示的に設定されていない場合、既定では 24 x 22 ピクセルになります。

CToolBar::GetToolBarCtrl の例を参照してください。

CToolBarCtrl::SetButtonStructSize

構造体のサイズを TBBUTTON 指定します。

void SetButtonStructSize(int nSize);

パラメーター

nSize
構造体の TBBUTTON サイズ (バイト単位)。

解説

構造体に追加のデータ TBBUTTON を格納する場合は、新しい構造体を TBBUTTON派生させるか、必要なメンバーを追加するか、構造体を最初のメンバーとして含む TBBUTTON 新しい構造体を作成します。 その後、この関数を呼び出して、ツール バーに新しい構造体のサイズを制御するように指示します。

構造の詳細については、以下をTBBUTTON参照してくださいCToolBarCtrl::AddButtons

CToolBarCtrl::SetButtonWidth

ツール バー コントロールのボタンの最小幅と最大幅を設定します。

BOOL SetButtonWidth(
    int cxMin,
    int cxMax);

パラメーター

cxMin
ボタンの最小幅 (ピクセル単位)。 ツール バー ボタンは、この値より狭くすることはできません。

cxMax
ボタンの最大幅 (ピクセル単位)。 ボタンのテキストが大きすぎる場合、コントロールは省略記号付きで表示します。

戻り値

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

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETBUTTONWIDTHの動作を実装します。

CToolBarCtrl::SetCmdID

指定したボタンが押されたときに所有者ウィンドウに送信されるコマンド識別子を設定します。

BOOL SetCmdID(
    int nIndex,
    UINT nID);

パラメーター

nIndex
コマンド ID が設定されるボタンの 0 から始まるインデックス。

nID
選択したボタンを設定するコマンド ID。

戻り値

成功した場合は 0 以外の値を返します。それ以外の場合は 0。

CToolBarCtrl::SetColorScheme

現在のツール バー コントロールの配色を設定します。

void SetColorScheme(const COLORSCHEME* lpColorScheme);

パラメーター

lpColorScheme
[in]ツール バー コントロールの COLORSCHEME 強調表示の色と影の色を記述する構造体へのポインター。

解説

Windows Vista ビジュアル テーマが設定されている場合、このメソッドは無効です。

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_SETCOLORSCHEME します。

次のコード例では、現在のツール バー コントロールの配色を設定します。 このコード例では、各ツール ボタンの左端と上端を赤にし、右端と下端を青にします。 ユーザーがボタンを押すと、ボタンの赤いエッジが青になり、青いエッジが赤に変わります。

//Set color scheme for the current toolbar control.
//Make the left and top edges of the tool button red,
//and the right and bottom edges blue. The colors
//reverse when a button is pressed.
//This method has no effect if the Vista visual theme
//is set.
{
   COLORSCHEME cs;
   cs.dwSize = sizeof(COLORSCHEME);
   cs.clrBtnHighlight = RGB(255, 0, 0);
   cs.clrBtnShadow = RGB(0, 0, 255);
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   m_toolBarCtrl.SetColorScheme(&cs);
}

CToolBarCtrl::SetDisabledImageList

ツール バー コントロールが無効なボタンを表示するために使用するイメージ リストを設定します。

CImageList* SetDisabledImageList(CImageList* pImageList);

パラメーター

pImageList
ツール バー コントロールが CImageList 無効なボタンイメージを表示するために使用するイメージを含むオブジェクトへのポインター。

戻り値

無効なボタンの画像を CImageList 表示するためにツール バー コントロールによって以前に使用されていたオブジェクトへのポインター。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETDISABLEDIMAGELISTの動作を実装します。 MFC の実装では、CImageListイメージ リストへのSetDisabledImageListハンドルではなく、ツール バー コントロールの無効なボタン イメージを含むオブジェクトを使用します。

CToolBarCtrl::SetDrawTextFlags

Win32 関数 DrawTextのフラグを設定します。これは、指定した四角形内のテキストを描画するために使用され、フラグの設定方法に従って書式設定されます。

DWORD SetDrawTextFlags(
    DWORD dwMask,
    DWORD dwDTFlags);

パラメーター

dwMask
Win32 関数DrawTextで指定された 1 つ以上のフラグのDT_組み合わせ。テキストの描画時にdwDTFlags使用されるビットインを示します。

dwDTFlags
ボタン テキストの描画方法を DT_ 示す、Win32 関数 DrawTextで指定された 1 つ以上のフラグの組み合わせ。 この値は、ボタンテキストが描画されるときに渡されます DrawText

戻り値

DWORD前のテキスト描画フラグを含む。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETDRAWTEXTFLAGSの動作を実装します。 このメンバー関数は、Win32 関数のフラグを設定します。この関数 DrawTextは、指定した四角形にテキストを描画し、フラグの設定方法に従って書式設定します。

CToolBarCtrl::SetExtendedStyle

ツール バー コントロールの拡張スタイルを設定します。

DWORD SetExtendedStyle(DWORD dwExStyle);

パラメーター

dwExStyle
新しい拡張スタイルを指定する値。 このパラメーターには、ツール バーの拡張スタイルの組み合わせを指定できます。

戻り値

前の拡張スタイルを表す A DWORD 。 スタイルの一覧については、Windows SDK の「ツール バー拡張スタイル」を参照してください

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETEXTENDEDSTYLEの動作を実装します。

CToolBarCtrl::SetHotImageList

ツール バー コントロールが "ホット" ボタンの表示に使用するイメージ リストを設定します。

CImageList* SetHotImageList(CImageList* pImageList);

パラメーター

pImageList
ツール バー コントロールが CImageList ホット ボタンの画像を表示するために使用するイメージを含むオブジェクトへのポインター。

戻り値

ホット ボタンの画像を CImageList 表示するためにツール バー コントロールによって以前に使用されていたオブジェクトへのポインター。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETHOTIMAGELISTの動作を実装します。

MFC の実装では、CImageListイメージ リストへのSetHotImageListハンドルではなく、ツール バー コントロールのホット ボタン イメージを含むオブジェクトを使用します。 ポインターが上にあると、ホット ボタンが強調表示されます。

CToolBarCtrl::SetHotItem

ツール バーのホットアイテムを設定します。

int SetHotItem(int nHot);

パラメーター

nHot
ホットになるアイテムの 0 から始まるインデックス番号。 この値が -1 の場合、どの項目もホットになることはありません。

戻り値

前のホットアイテムのインデックス。ホットアイテムが存在しない場合は -1。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETHOTITEMの動作を実装します。

CToolBarCtrl::SetImageList

既定の状態のボタンを表示するためにツール バーが使用するイメージ リストを設定します。

CImageList* SetImageList(CImageList* pImageList);

パラメーター

pImageList
既定の CImageList 状態でボタンイメージを表示するためにツール バー コントロールによって使用されるイメージを含むオブジェクトへのポインター。

戻り値

ボタンイメージを既定の CImageList 状態で表示するためにツール バー コントロールによって以前使用されていたオブジェクトへのポインター。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETIMAGELISTの動作を実装します。

MFC の実装では、CImageListイメージ リストへのSetImageListハンドルではなく、ツール バー コントロールのボタン イメージを含むオブジェクトを使用します。

CToolBarCtrl::SetIndent

ツール バー コントロールの最初のボタンのインデントを設定します。

BOOL SetIndent(int iIndent);

パラメーター

iIndent
インデントを指定する値 (ピクセル単位)。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

CToolBarCtrl::SetInsertMark

ツール バーの現在の挿入マークを設定します。

void SetInsertMark(TBINSERTMARK* ptbim);

パラメーター

ptbim
挿入マークを TBINSERTMARK 含む構造体へのポインター。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETINSERTMARKの動作を実装します。

CToolBarCtrl::SetInsertMarkColor

ツールバーの挿入マークの描画に使用する色を設定します。

COLORREF SetInsertMarkColor(COLORREF clrNew);

パラメーター

clrNew
COLORREF新しい挿入マークの色を含む値。

戻り値

前の COLORREF 挿入マークの色を含む値。

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ TB_SETINSERTMARKCOLORの動作を実装します。

CToolBarCtrl::SetMaxTextRows

ツール バー ボタンに表示されるテキスト行の最大数を設定します。

BOOL SetMaxTextRows(int iMaxRows);

パラメーター

iMaxRows
設定する行の最大数。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

CToolBarCtrl::SetMetrics

オブジェクトのメトリックを CToolBarCtrl 設定します。

void SetMetrics(LPTBMETRICS ptbm);

パラメーター

ptbm
オブジェクトのTBMETRICSCToolBarCtrl構造へのポインター。

解説

このメンバー関数は、Windows SDK で説明されているように、メッセージの TB_SETMETRICS 機能をエミュレートします。

CToolBarCtrl::SetOwner

ツール バー コントロールの所有者ウィンドウを設定します。

void SetOwner(CWnd* pWnd);

パラメーター

pWnd
ツール バー コントロールの CWnd 新しい所有者ウィンドウとなる、または CWnd派生オブジェクトへのポインター。

解説

所有者ウィンドウは、ツール バーから通知を受け取るウィンドウです。

CToolBarCtrl::SetPadding

現在のツール バー コントロールの水平方向と垂直方向のパディングを設定します。

DWORD SetPadding(
    int nHorzPadding,
    int nVertPadding);

パラメーター

nHorzPadding
[in]ツールバー コントロールの水平方向のパディングをピクセル単位で指定します。

nVertPadding
[in]ツールバー コントロールの垂直方向のパディングをピクセル単位で指定します。

戻り値

DWORD低い単語に前の水平方向のパディング値が含まれており、その高い単語に前の垂直パディング値が含まれている。 パディング値はピクセル単位で測定されます。

解説

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_SETPADDING します。

次のコード例では、現在のツール バー コントロールの水平方向と垂直方向のパディングを 20 ピクセルに設定します。

{
   // Set the horizontal and vertical padding of the current
   // toolbar control.
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   m_toolBarCtrl.SetPadding(50, 50);
}

CToolBarCtrl::SetPressedImageList

現在のツール バー コントロールが押された状態のボタンを表すために使用するイメージ リストを設定します。

CImagelist* SetPressedImageList(
    int iImageID,
    CImageList* pImageList);

パラメーター

iImageID
[in]イメージ リストの 0 から始まるインデックス。 イメージ リストを 1 つだけ使用する場合は、このパラメーターを 0 に設定します。

pImageList
[in]新しいイメージ リストを含む a CImageList へのポインター。

戻り値

現在のコントロールの前のイメージ リストを含む a CImageList へのポインター、または NULL そのようなイメージ リストが設定されていない場合。

解説

このメソッドは、Windows SDK で説明されているメッセージを送信 TB_SETPRESSEDIMAGELIST します。

次のコード例では、押されたイメージ リストを既定のイメージ リストと同じに設定します。

{
   // SetPressedImageList
   // Set the pressed image list to be the same as the
   // normal image list.
   CToolBarCtrl &m_toolBarCtrl = m_wndToolBar.GetToolBarCtrl();
   CImageList *pNormalCil = m_toolBarCtrl.GetImageList();
   CImageList *pPressedCil = m_toolBarCtrl.GetPressedImageList();
   m_toolBarCtrl.SetPressedImageList(0, pNormalCil);
}

CToolBarCtrl::SetRows

ツールバー コントロールに、要求された行数に合わせてサイズを変更するように求めます。

void SetRows(
    int nRows,
    BOOL bLarger,
    LPRECT lpRect);

パラメーター

nRows
要求された行数。

bLarger
ツール バーのサイズを要求された行数に変更できない場合に、使用する行数を増やすか、少ない行を使用するかを指定します。

lpRect
ツール バーの CRect 新しい外接する四角形を受け取るオブジェクトまたは RECT 構造体を指します。

解説

ツールバーが要求された数または行に合わせてサイズを変更できない場合は、値に bLarger応じて、それ自体のサイズが次に大きいか、次に小さい有効なサイズに変更されます。 あるTRUE場合bLarger、新しい行数は要求された数より大きくなります。 あるFALSE場合bLarger、新しい行数は要求された数よりも小さくなります。

すべての行が同じ数のボタン (おそらく最後の行を除く) を持つようなボタンを配置できる場合、指定された数の行がツール バーに対して有効です。 たとえば、最後の 2 つの行を短くする必要があるため、4 つのボタンを含むツール バーのサイズを 3 行にすることはできませんでした。 3 行にサイズを設定しようとすると、4 行の場合は 4 行、ある場合bLargerbLargerTRUEFALSE2 行が取得されます。

ツールバーに区切り記号がある場合、指定された数の行が有効な場合のルールはより複雑になります。 レイアウトは、グループが 1 つの行に収まらない場合を除き、ボタン グループ (グループの最初のボタンと最後のボタンの前に区切り記号が付いたボタン) が複数の行で分割されないように計算されます。

グループが 1 つの行に収まらない場合、大きなグループが終了した行に収まる場合でも、次のグループは次の行で開始されます。 このルールの目的は、大きなグループ間の分離をより顕著にすることです。 結果の垂直方向の区切り記号は行としてカウントされます。

また、メンバー関数は常に SetRows 、ツール バーのサイズが最も小さいレイアウトを選択します。 スタイルを使用してツール バーを TBSTYLE_WRAPABLE 作成し、コントロールのサイズを変更すると、コントロールの幅を指定した上で説明したメソッドが適用されます。

この関数は、スタイルで TBSTYLE_WRAPABLE 作成されたツール バーに対してのみ呼び出すことができます。

CToolBarCtrl::SetState

ツール バー コントロールの指定したボタンの状態を設定します。

BOOL SetState(
    int nID,
    UINT nState);

パラメーター

nID
ボタンのコマンド識別子。

nState
状態フラグ。 ボタンの状態 CToolBarCtrl::AddButtonsに関してリストされている値の組み合わせを指定できます。

戻り値

成功した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

この関数は、複数のボタンの状態を設定する場合に特に便利です。 状態を 1 つだけ設定するには、次のいずれかのメンバー関数をPressButtonIndeterminateHideButtonCheckButton使用します。 EnableButton

CToolBarCtrl::SetStyle

ツール バー コントロールのスタイルを設定します。

void SetStyle(DWORD dwStyle);

パラメーター

dwStyle
DWORD Windows SDK で説明されているように、ツール バー コントロール スタイル組み合わせを含む。

CToolBarCtrl::SetToolTips

ツール ヒント コントロールをツール バー コントロールに関連付けます。

void SetToolTips(CToolTipCtrl* pTip);

パラメーター

pTip
オブジェクトへの CToolTipCtrl ポインター。

CToolBarCtrl::SetWindowTheme

オブジェクトの表示スタイルを CToolBarCtrl 設定します。

HRESULT SetWindowTheme(LPCWSTR pszSubAppName);

パラメーター

pszSubAppName
設定するツール バーのビジュアル スタイルを含む Unicode 文字列へのポインター。

戻り値

戻り値は使用されません。

解説

このメンバー関数は、Windows SDK で説明されているように、メッセージの TB_SETWINDOWTHEME 機能をエミュレートします。

関連項目

MFC サンプル CMNCTRL1
MFC サンプル MFCIE
CWnd クラス
階層図
CToolBar クラス