DTCTL

適用対象: Outlook 2013 | Outlook 2016

表示テーブルから構築されたダイアログ ボックスで使用されるコントロールについて説明します。

プロパティ
ヘッダー ファイル:
Mapidefs.h
typedef struct
{
  ULONG ulCtlType;
  ULONG ulCtlFlags;
  LPBYTE lpbNotif;
  ULONG cbNotif;
  LPSTR lpszFilter;
  ULONG ulItemID;
  union
  {
    LPVOID lpv;
    LPDTBLLABEL lplabel;
    LPDTBLEDIT lpedit;
    LPDTBLLBX lplbx;
    LPDTBLCOMBOBOX lpcombobox;
    LPDTBLDDLBX lpddlbx;
    LPDTBLCHECKBOX lpcheckbox;
    LPDTBLGROUPBOX lpgroupbox;
    LPDTBLBUTTON lpbutton;
    LPDTBLRADIOBUTTON lpradiobutton;
    LPDTBLMVLISTBOX lpmvlbx;
    LPDTBLMVDDLBX lpmvddlbx;
    LPDTBLPAGE lppage;
  } ctl;
} DTCTL, FAR *LPDTCTL;

メンバー

ulCtlType

ctl メンバーに含まれ、コントロールのPR_CONTROL_TYPE (PidTagControlType) プロパティに対応するコントロールの種類。 使用可能な値は次のとおりです。

DTCT_LABEL

ラベル コントロール

DTCT_EDIT

コントロールを編集します。

DTCT_LBX

リスト ボックス コントロール。

DTCT_COMBOBOX

コンボ ボックス コントロール。

DTCT_DDLBX

ドロップダウン リスト コントロール。

DTCT_CHECKBOX

チェック ボックス コントロール。

DTCT_GROUPBOX

グループ ボックス コントロール。

DTCT_BUTTON

ボタン コントロール。

DTCT_PAGE

タブ付きページ コントロール。

DTCT_RADIOBUTTON

ラジオ ボタン コントロール。

DTCT_MVLISTBOX

複数値リスト コントロール。

DTCT_MVDDLBX

複数値ドロップダウン リスト コントロール。

ulCtlFlags

コントロールの機能を記述し、コントロールの PR_CONTROL_FLAGS (PidTagControlFlags) プロパティに対応するフラグのビットマスク。 これらのフラグは、チェック ボックス、コンボ ボックス、リスト ボックス、および編集コントロールにのみ設定できます。 使用可能な値は次のとおりです。

DT_ACCEPT_DBCS

ANSI 形式または DBCS 形式を使用できます。 このフラグは、編集コントロールに対してのみ有効です。

DT_EDITABLE

ユーザーはコントロール内のテキストを変更できます。

DT_MULTILINE

コントロールには複数のテキスト行を含めることができます。 このフラグは、編集コントロールに対してのみ有効です。

DT_PASSWORD_EDIT

コントロールにはパスワードが含まれています。そのため、コントロールの内容をユーザーに表示しないでください。 このフラグは、編集コントロールに対してのみ有効です。

DT_REQUIRED

ダイアログ ボックス コントロールが必要です。 このフラグは、エディット ボックス コントロールとコンボ ボックス コントロールに対してのみ有効です。

DT_SET_IMMEDIATE

コントロールの変更時に値の即時出力を有効にします。 これにより、2 つのコントロール間で依存関係を確立できます。

lpbNotif

サービス プロバイダーとコントロールの識別子を表す GUID 構造体を指すポインター。 lpbNotif メンバーと cbNotif メンバーは、コントロールのPR_CONTROL_ID (PidTagControlId) プロパティに対応しており、コントロールを更新する必要があるときにユーザー インターフェイスに通知するために使用されます。

cbNotif

lpbNotif メンバーが指す構造体のバイト数。

Lpszfilter

編集ボックス コントロールまたはコンボ ボックス コントロールに入力できる文字を示す文字列へのポインター。 他の種類のコントロールの場合、 lpszFilter メンバーは NULL にすることができます。 エディット ボックス コントロールとコンボ ボックス コントロールの場合は、一度に 1 つの文字に適用される正規表現にする必要があります。 コントロール内のすべての文字に同じフィルターが適用されます。 フィルター文字列の形式は次のとおりです。

文字 説明
* 任意の文字を使用できます (例: "*")。
[ ] 文字のセットを定義します (例: "[0123456789]".)
- 文字の範囲を示します (例: "[a-z]")。
~ これらの文字が許可されていないことを示します (例: "[~0-9]")
\ 前の記号のいずれかを引用符で囲む場合に使用します (たとえば、 "[\-\\\[\]]" -, , [、] 文字が許可されていることを意味します)。

ulItemID

ダイアログ ボックス リソース内のコントロールを識別する値。 ulItemID メンバー DTCT_PAGE型のタブ付きページ コントロールの場合は、必要に応じて、文字列リソースからページのコンポーネント名を読み込みます。 位置とラベルの情報は、ダイアログ ボックス リソースから読み取られます。

Ctl

コントロールのデータを保持し、コントロールの PR_CONTROL_STRUCTURE (PidTagControlStructure) プロパティに対応する構造体。 コントロールの種類ごとに構造が異なります。

注釈

DTCTL 構造体は、任意の型の 1 つのコントロールを記述します。 ほとんどのメンバーは、コントロールのプロパティを設定するために使用されます。

ctl メンバーは、特定の種類のコントロールに関連する構造体の和集合です。 たとえば、 DTCTL 構造体が編集コントロールを記述している場合、 ctl メンバーは DTBLEDIT 構造体を指します。 この構造体は、コントロールの PR_CONTROL_STRUCTURE プロパティに対応します。 共用体は、 DTCTL 構造体のコンパイル時初期化を可能にする LPVOID 型の変数を最初のメンバーとして持ちます。

BuildDisplayTable 関数は、コントロール リソースから表示テーブルを構築するために DTCTL 構造体を使用しますが、DTCTL 構造体は表示テーブル自体には表示されません。 この構造体は 、BuildDisplayTable に情報を提供するだけです。

ulCtlFlags メンバーでは、4 つのフラグDT_ACCEPT_DBCS DT_EDITABLE DT_MULTILINE_and DT_PASSWORD_EDIT編集コントロールにのみ影響します。 他の 2 つのDT_REQUIREDとDT_SET_IMMEDIATEは、編集可能なコントロールに影響します。

ダイアログ ボックスで使用できるコントロールは、ラベル、テキスト ボックス、インク対応テキスト ボックス、リスト、ドロップダウン リスト、コンボ ボックス、チェック ボックス、グループ ボックス、ボタン、ラジオ ボタン、タブ付きページです。

表示テーブルの概要については、「テーブルの 表示」を参照してください。 表示テーブルを実装する方法については、「表示テーブルの 実装」を参照してください。

関連項目