次の方法で共有


COMBOS_BEGIN-COMBOS_END

[このドキュメントはプレビュー版であり、後のリリースで変更されることがあります。 空白のトピックは、プレースホルダーとして挿入されています。]

The COMBOS_BEGIN — COMBOS_END section contains entries that define a VSPackage's combo boxes.

コンボ ボックスのエントリ

コンボ ボックス エントリは、選択できるオプションのドロップダウン一覧を提供するツールバーの表示するコントロールを定義します。 オプションを選択] [-、コンボ ボックスの先頭にテキスト フィールド表示されます。 テキスト ファイルもと見なさ、編集フィールド ドロップダウン リストに追加、編集フィールドに入力されたもので。

All combo box controls are defined in the COMBOS_BEGIN — COMBOS_END section. コンボ ボックスの各項目には、最大 11 個のフィールド、コンマで区切られたから、セミコロン (;) で終わるが含まれています。 以下に例を示します。

Combo Box ID, Group ID, Priority, Fill Command ID, Width, Type, Flags, Button Text, Menu Text, ToolTip Text, Command Name;

これらのフィールドは、次の表に示すされ、指定された順序に表示 必要があります。 最後のフィールドをセミコロンで終了する必要があります。 ": コンボ ボックスのエントリ フィールド] を参照してください。 詳細の各フィールドについては「に」以降。

フィールド

説明

Combo Box ID

コンボ ボックス コントロールを識別する GUID:ID ペアを指定します。

Group ID

このコントロールを含むグループを識別する GUID:ID ペア。

Priority

グループ内の他のアイテムに相対コンボ ボックスの配置を使用する値。

Fill Command ID

識別子は、コンボの内容] ドロップダウン リスト ボックスする場合に、VSPackage に渡される、必要に入力があります。

Width

論理単位で、コンボ ボックスの幅。

Type

コンボ ボックス コントロールの種類。

Flags

コンボの動作を変更する属性] コントロールをボックスします。

Button Text

この、コンボ ボックス コントロールは通常使用されませんが、ToolTip Text フィールドが使用されます Button Text を指定しない場合。

Menu Text

これは通常使用されませんコンボ ボックス コントロールの。

ToolTip Text

コンボ ボックス コントロールのポップ ヒントに表示されますされるテキスト。 このフィールドは省略可能です。 指定しない場合、Button Text フィールドが使用されます。

Command Name

コマンド ウィンドウの で使用できるこのコンボ ボックスおよびキーの割り当てのコマンド名。 このフィールドは省略可能です。 Button Text フィールドには、指定されていない場合は、変換し、("My コンボ ボックス] を使用します。 なります"MyComboBox")。

コンボ ボックスの使用例 (VB)

The following code example from the File Explorer sample shows the COMBOS_BEGIN – COMBOS_END section. 次の使用例のエントリは読みやすくするためにインデントします。 実際、エントリにすべてのフィールドは、1 行にあります。 詳細については、「CMDS_SECTION-CMDS_END」を参照してください。

COMBOS_BEGIN
    guidEUCmd:cmdidFilesFilter,
          guidEUGrp:IDG_FILEPANE_FILTER,
          0x0010,
          cmdidFilesFilterHandler,
          75,
          DYNAMICCOMBO,
          DEFAULTDISABLED,
          "Filter",
          ,
          "Filter";
COMBOS_END

コンボ ボックス エントリ フィールド

Each entry in the COMBOS_BEGIN – COMBOS_END section contains up to ten fields. すべてのフィールドを区切るコンマと、セミコロン (;) はそれぞれのエントリの末尾を示します。 順のフィールドは。

  • Combo Box ID

    Combo Box ID フィールドには、コンボ ボックスを作成するを識別します。 常に Combo Box ID には、コンボ ボックス一意に識別する GUID:ID 組み合わせを指定します。 ID は他のコマンド、メニューのまたはグループを異なるにする必要があります。

    例では Combo Box ID です。

    guidEUCmd:cmdidFilesFilter
    
  • Group ID

    Group ID フィールドは、コンボ ボックスが所属するプライマリ グループを指定します。

    プライマリ グループなしコンボ ボックスを作成するにはする必要がありますかは self-hosted は、インスタンスは、独自の Combo Box ID 親グループとして使用します。

    guidEUCmd:cmdidFilesFilter, guidEUCmd:cmdidFilesFilter, ...

    または、コンボ ボックスの GUID と 0: のグループ ID を使用

    guidEUCmd:cmdidFilesFilter, guidEUCmd:0, ...

    If a combo box does not have a primary group, it must be placed on a toolbar with an entry in the CMDPLACEMENT_SECTION-CMDPLACEMENT_END section or it will not appear in the environment.

    例では Group ID です。

    guidEUGrp:IDG_FILEPANE_FILTER
    

    注意

    標準メニューで、コンボ ボックスを配置できるが許容されるユーザー インターフェイス (UI) の設計ではありません。動的サブメニューする場合は、型 Button と DynamicItemStart のフラグをコマンドを作成します。

  • Priority

    Priority フィールドには] で、コンボ ボックス他のアイテムの基準に指定したグループ内の配置を指定します。 低い優先順位値を持つアイテムは、大きなの優先順位値のアイテムの前に表示されます。 使用例には、Priority フィールドは。

    0x0010
    

    When a combo box's hosting is defined by command placement, the priority value specified here is ignored in favor of that specified by the entry in the CMDPLACEMENT_SECTION-CMDPLACEMENT_END section.

  • Fill Command ID

    Fill Command ID フィールドには、セカンダリ ID を環境を使用して、コンボ ボックスに表示する必要がありますされるアイテムを取得するを指定します。 コンボ ボックスに置く必要がありますアイテムの一覧を取得するにはこのコマンド ID の VSPackage の QueryStatus メソッドが呼び出されます。

    例では、Fill Command ID は。

    CmdidFilesFilterHandler
    
  • Width

    Width フィールドには、ピクセル単位で、コンボ ボックスの幅を指定します。 上記の例で、Width フィールドが。

    75
    
  • Combo Box Type

    Combo Box Type フィールドには、大文字と小文字を区別しないありは、実装されているコンボ ボックスの種類を指定します。 4 種類がありますコンボ ボックスの VSPackage の使用。

    コンボ ボックスの種類

    説明

    MRUCombo

    最近 (MRUCombo) コンボ ボックスが作成され、VSPackage の代わりに、環境によって入力されます。 ユーザーがコンボ ボックス] に入力することと、環境をコンボ ボックスあたり 16 最後エントリを記憶します。 ユーザーがコンボ ボックス、または新しいものの種類で何かを選択、環境文字列を送信、適切な VSPackage。

    DynamicCombo

    DynamicCombo は、環境、VSPackage の代わりによって作成されます。 VSPackage はこのコンボ ボックスの内容を入力を担当します。 ユーザーは内のアイテムを選択するだけでなくこのコンボ ボックスに入力できます。 環境がコンボ ボックスで Exec メソッドが呼び出される、VSPackage セーフ配列で、コンボ ボックスの内容を取得する必要があります。 環境は配列データと、コンボ ボックスし作成します。

    DropDownCombo

    DropDownCombo も、VSPackage の代わりに、環境によって作成されます。 VSPackage はこのコンボ ボックスの内容を入力します。 ただし、ユーザーことはできませんは何もフィールドに入力編集-リストのドロップには、ユーザーをアイテムの一覧から選択できますを場所だけです。

    IndexCombo

    IndexCombo は、 DropDownCombo のようなの違いとようコマンドの実行中は開始されます。 DropDownCombo で、環境コマンド テキスト、コマンドを識別するのに使用します。 IndexCombo で、環境、アイテムのインデックス番号で、ドロップ ダウン リストとして使用コマンド識別子。

  • Flags

    Flags フィールドには、コンボに配置する属性を指定します。 次の表は、コンボ フラグを Visual Studio をサポートします。

    フラグ

    説明

    NoKeyCustomize

    キーのカスタマイズを無効にします。

    NoButtonCustomize

    無効にボタンのカスタマイズ

    NoCustomize

    キーとボタンの両方のカスタマイズを inhibits します。

    DefaultInvisible

    コンボ ボックスは既定では非表示です。

    DefaultDisabled

    コンボ ボックスは、デフォルトで無効になっています。

    DynamicVisibility

    表示は QueryStatus から制御されます。

    これは、メニューのツールバーではなく表示されるコンボ ボックスに適用されます。 アイテムには最上位レベルのツールバーは無効にするが非表示でなく、OLECMDF_INVISIBLEQueryStatus から返されたとき。

    CommandWellOnly

    コンボ ボックスは、最上位メニューに表示されません。 ユーザーは、コマンド ウェル] ダイアログ ボックスで、親メニューをコンボ ボックスを追加することができます。 このフラグは、コンテキスト メニューのツールバー、メニューの [コントローラ、または連鎖メニューでの配置を影響しません。

    IconAndText

    コンボ ボックスのテキストが表示されます。 既定値はテキストがありません。

    FilterKeys

    「フィルタ キー」で説明 このテーブルの後のセクション。

    NoAutoComplete

    完全な機能の自動は無効です。

    CaseSensitive

    ユーザーのエントリは大文字と小文字が区別されます。

    StretchHorizontally

    このフラグが設定すると、幅、コンボ ボックスに対する最小幅なりをすべて予備の領域を塗りつぶす、コンボ ボックス拡大がある場合部屋ツールバーの。 これは、現象は、ツールバーが水平方向にドッキングされている、[ツールバーの 1 つだけのコンボ ボックス (フラグは、最後のコンボ ボックスを除くすべて無視されます) フラグを使用できる場合にのみ発生します。 このフラグは Visual Studio SDK にします。

    Filtering Keys

    環境は、VSPackage の Exec メソッドを Win32 のメッセージ数を渡します。 コンボ ボックスが FilterKeys フラグとフィルタのマークされている場合はキーのキーを押してメッセージも送信されます。 これらのメッセージ、WM_CHAR のいずれかが入力されている任意の文字を拒否する使用できます。

    Exec メソッド (メッセージを送信しました) に応じて入力として発生のメッセージに関連付けられている値の配列です。 これらの値のいずれかが押されていたをキーあり、別の値はコンボ ボックスで現在の文字列です。 フラグのキーが処理されたを示すまたは特定のキーがいないことによってフィルタに設定できる出力パラメータが、Exec メソッド。

    具体的には、入力配列は VARIANTVT_VARIANTSafeArray 種類とは次の順序で要素が含まれます。

    1. (HWND, 4 バイト値) メッセージを送信した、ウィンドウ (VT_I4) のハンドル。

    2. Win32 メッセージなどのコード WM_KEYDOWNWM_SETFOCUS、または WM_CHAR (VT_I4, 4 バイト値)。

    3. メッセージの WPARAM値 (VT_I4, 4 バイト値)。

    4. メッセージの LPARAM値 (VT_I4, 4 バイト値)。

    5. コンボ ボックスの現在テキストはコントロール (VT_BSTR, 文字列) を編集します。

    出力パラメータが VARIANTVT_I4 型に設定および環境対処、メッセージを示す値が指定ある必要があります (また、出力パラメータに設定可能 VT_BSTR 型と、エディット コントロールにコピーされる文字列に設定値)。

    キーをフィルタ処理、VSFILTERKEYSFLAGS 列挙体からの次の値返される出力パラメータで。

    • VSFILTERKEYS_DODEFAULT

      通常の処理を続行します。 通常のルーティングに従って作業メッセージことができます。 これは out パラメータは設定されない場合のデフォルト コードです。

    • VSFILTERKEYS_HANDLED

      Exec メソッド処理のメッセージ; さらに処理を停止します。 これは特定キーの入力を拒否するときに使用する値です。

    • VSFILTERKEYS_TRANSLATE

      キーが押さをアクセラレータとして扱われます可能な場合、コマンドに割り当てられたです。 キーが押さコマンドにマップされていません]、メッセージは通常ルーティングから続行されます。

  • Button Text

    Button Text フィールドに、コンボ ボックスの名前を指定され一般のみテキスト フィールド設定されます。 Button Text フィールドは、 Menu Text または ToolTip Text フィールドが未設定の場合に使用されます。

    使用例には、Button Text フィールドは。

    "Filter"
    
  • Menu Text

    Menu Text フィールドには、標準のメニューは場合に、コンボ ボックスに対する表示されるテキスト指定します。 Menu Text フィールドが、コンボ ボックスに、標準のメニューに [UI お勧めがないは指定されて通常いません。 例の メニュー テキストの フィールドが空白です。

  • ToolTip Text

    ToolTip Text フィールドは表示されるテキスト、コンボ ボックスに対するヒントで指定します。 ToolTip Text フィールドは空白または指定されていませんが場合、ツール ヒントのテキストは、 Button Text フィールドから取得されます。 例では、ToolTip Text フィールドに設定されます。

    "Filter"
    
  • Command Name

    Command Name フィールドは表示されるテキスト Command Window および] ユーザー設定 ダイアログ ボックスの ( ツール メニューから利用できる)、 キーボードの ウィンドウに指定します。 Command Name フィールドを指定しない場合、 Button Text フィールドは文字、数字、アンダースコア (_)、および埋め込みのピリオドを除くすべてを壊さによって使用されます。 たとえば、"My コンボ ボックス] "MyComboBox"になります。 例で、Command Name フィールドが指定されませんので、"フィルタ"の Button Text フィールド 使用されます。

参照

概念

コマンド テーブル形式リファレンス

VSPackage の IDE にユーザー インターフェイス要素を追加する方法

NEWGROUPS_BEGIN-NEWGROUPS_END

その他の技術情報

File Explorer