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 結構組成的結構指標,表示服務提供者和控件的標識碼。 lpbNotif 和 cbNotif 成員會對應至控件的 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會影響任何可編輯的控件。
對話框可用的控件包括標籤、文字框、筆跡感知文本框、清單、下拉式清單、下拉式方塊、複選框、群組框、按鈕、單選按鈕和索引卷標式頁面。
如需顯示數據表的概觀,請 參閱顯示數據表。 如需如何實作顯示數據表的資訊,請參閱 實作顯示數據表。