共用方式為


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

在控件的變更時,啟用值的立即輸出。 這可讓您在兩個控件之間建立相依性關聯性。

lpbNotif

GUID 結構組成的結構指標,表示服務提供者和控件的標識碼。 lpbNotifcbNotif 成員會對應至控件的 PR_CONTROL_ID (PidTagControlId) 屬性,並且用來在必須更新控件時通知使用者介面。

cbNotif

lpbNotif 成員所指向之結構中的位元組計數。

lpszFilter

字元字串的指標,描述哪些字元可以輸入編輯或下拉式方塊控件中。 對於其他類型的控件, lpszFilter 成員可以是 NULL。 針對編輯和下拉式方塊控件,它應該是一次套用至單一字元的正則表達式。 相同的篩選條件會套用至 控件中的所有字元。 篩選字串的格式如下:

字元 描述
* 允許任何字元 (例如, "*") 。
[ ] 定義一組字元 (例如 . "[0123456789]")
- 表示字元範圍 (例如, "[a-z]") 。
~ 表示不允許這些字元 (例如 "[~0-9]")
\ 例如,用來引用任何先前 (符號, "[\-\\\[\]]" 表示) 允許-, , [, 和 ] 字元。

ulItemID

識別對話框資源中控件的值。 針對類型的索引標籤頁面控件DTCT_PAGE可以選擇性地使用 ulItemID 成員從字串資源載入頁面的元件名稱。 位置和標籤資訊是從對話框資源讀取。

Ctl

結構,保存控件的數據,並對應至控件的 PR_CONTROL_STRUCTURE (PidTagControlStructure) 屬性。 每種類型的控制件都有不同的結構。

註解

DTCTL 結構描述任何類型的一個控制件。 其大部分成員都是用來設定控件上的屬性。

ctl 成員是與特定控件類型相關的結構聯集。 例如,如果 DTCTL 結構描述編輯控制件, ctl 成員會指向 DTBLEDIT 結構。 這個結構會對應至控件的 PR_CONTROL_STRUCTURE 屬性。 等位的第一個成員是 LPVOID 類型的變數,以允許編譯時間初始化 DTCTL 結構。

雖然 BuildDisplayTable 函式使用 DTCTL 結構從控制資源建置顯示數據表, 但 DTCTL 結構永遠不會出現在顯示數據表本身。 此結構只會提供資訊給 BuildDisplayTable

ulCtlFlags 成員中,四個旗標DT_ACCEPT_DBCS DT_EDITABLE,DT_MULTILINE_and DT_PASSWORD_EDIT只會影響編輯控件。 另外兩個DT_REQUIRED和DT_SET_IMMEDIATE會影響任何可編輯的控件。

對話框可用的控件包括標籤、文字框、筆跡感知文本框、清單、下拉式清單、下拉式方塊、複選框、群組框、按鈕、單選按鈕和索引卷標式頁面。

如需顯示數據表的概觀,請 參閱顯示數據表。 如需如何實作顯示數據表的資訊,請參閱 實作顯示數據表

另請參閱