DTBLCOMBOBOX
適用対象: Outlook 2013 | Outlook 2016
表示テーブルから構築されたダイアログ ボックスで使用されるコンボ ボックス コントロールについて説明します。
プロパティ | 値 |
---|---|
ヘッダー ファイル: | Mapidefs.h |
関連マクロ: SizedDtblComboBox |
typedef struct _DTBLCOMBOBOX
{
ULONG ulbLpszCharsAllowed;
ULONG ulFlags;
ULONG ulNumCharsAllowed;
ULONG ulPRPropertyName;
ULONG ulPRTableName;
} DTBLCOMBOBOX, FAR *LPDTBLCOMBOBOX;
メンバー
ulbLpszCharsAllowed
DTBLCOMBOBOX 構造体の先頭から、コンボ ボックスの編集コントロールに入力できる文字への制限 (存在する場合) を記述する文字列フィルターへのオフセット。 フィルターは正規表現として解釈されず、入力されたすべての文字に同じフィルターが適用されます。 フィルターの形式は次のとおりです。
文字 | 説明 |
---|---|
* |
任意の文字を使用できます (例: "*" )。 |
[ ] |
一連の文字 (例: "[0123456789]" ) を定義します。 |
- |
文字の範囲を示します (例: "[a-z]" )。 |
~ |
これらの文字が許可されていないことを示します。 (例: "[~0-9]" 。) |
\ |
前の記号のいずれかを引用符で囲む場合に使用します (たとえば、 "[\-\\\[\]]" -, , [、] 文字が許可されていることを意味します)。 |
ulFlags
文字列フィルターの形式を指定するために使用されるフラグのビットマスク。 次のフラグを設定できます。
MAPI_UNICODE
フィルターは Unicode 形式です。 MAPI_UNICODE フラグが設定されていない場合、フィルターは ANSI 形式です。
ulNumCharsAllowed
コンボ ボックスのテキスト ボックスに入力できる最大文字数。
ulPRPropertyName
PT_TSTRING型のプロパティのプロパティ タグ。
ulPRTableName
OpenProperty 呼び出しを使用して IMAPITable インターフェイスを開くことができるPT_OBJECT型のプロパティのプロパティ タグ。 テーブルには、 ulPRPropertyName メンバーによって識別されるプロパティと同じ型のプロパティを持つ列が 1 つ必要です。 テーブルの行は、リストの設定に使用されます。
注釈
DTBLCOMBOBOX 構造体は、リストと選択フィールドで構成されるコントロールのコンボ ボックスを表します。 一覧には、ユーザーが選択できる情報が表示され、選択フィールドに現在の選択内容が表示されます。 選択フィールドは、リストにまだ含まれていないテキストを入力するためにも使用できる編集コントロールです。
2 つのプロパティ タグ メンバーが連携して、リスト表示を編集コントロールと調整します。 MAPI は、最初にコンボ ボックスを表示するときに、表示テーブルに関連付けられている IMAPIProp 実装の OpenProperty メソッドを呼び出して、ulPRTableName メンバーによって表されるテーブルを取得します。 このテーブルには、 ulPRPropertyName メンバーによって表されるプロパティの値を含む列が 1 つの列があります。 したがって、この列は ulPRPropertyName プロパティと同じ型である必要があり、両方の列は文字列である必要があります。
列の値は、コンボ ボックスのリスト セクションに表示されます。 したがって、 PR_NULL (PidTagNull) は ulPRPropertyName の有効なプロパティ タグではありません。 ユーザーがいずれかの行を選択するか、テキスト ボックスに新しいデータを入力すると、 ulPRPropertyName プロパティが選択または入力された値に設定されます。
編集コントロールの初期値を表示するために、MAPI は IMAPIProp::GetProps を呼び出して、表示テーブルのプロパティ値を取得します。 取得したプロパティの 1 つが ulPRPropertyName メンバーによって表されるプロパティと一致する場合、その値は初期値になります。
表示テーブルの概要については、「テーブルの 表示」を参照してください。 表示テーブルを実装する方法については、「表示テーブルの 実装」を参照してください。