共用方式為


BuildDisplayTable

適用於:Outlook 2013 |Outlook 2016

從包含在一或多個 DTPAGE 結構中的屬性頁數據建立顯示數據表。

屬性
標頭檔:
Mapiutil.h
實作者:
Mapi
通話者:
服務提供者
STDAPI BuildDisplayTable(
  LPALLOCATEBUFFER lpAllocateBuffer,
  LPALLOCATEMORE lpAllocateMore,
  LPFREEBUFFER lpFreeBuffer,
  LPMALLOC lpMalloc,
  HINSTANCE hInstance,
  UINT cPages,
  LPDTPAGE lpPage,
  ULONG ulFlags,
  LPMAPITABLE * lppTable,
  LPTABLEDATA * lppTblData
);

參數

lpAllocateBuffer

[in] MAPIAllocateBuffer 函式的指標,用來配置記憶體。

lpAllocateMore

[in] MAPIAllocateMore 函式的指標,用來配置額外的記憶體。

lpFreeBuffer

[in] MAPIFreeBuffer 函式的指標,用來釋放記憶體。

lpMalloc

閑置;應該設定為 NULL。

hInstance

[in]MAPI 對象的實例, BuildDisplayTable 會從中擷取資源。

cPages

[in]lpPage 參數所指向數位中的 DTPAGE 結構計數。

lpPage

[in] DTPAGE 結構陣列的指標,其中包含要建置之顯示數據表頁面的相關信息。

ulFlags

[in]旗標的位掩碼。 您可以設定下列旗標:

MAPI_UNICODE

傳入的字串是 Unicode 格式。 如果未設定MAPI_UNICODE旗標,則字串會是 ANSI 格式。

lppTable

[out]顯示數據表指標的指標,它會公開 IMAPITable 介面。

lppTblData

[in, out]數據表數據物件的指標,會在 lppTable 參數傳回的數據表上公開 ITableData 介面。 如果不需要數據表數據物件, 則應該將 lppTblData 設定為 NULL,而不是指標值。

傳回值

註解

MAPI 會針對大部分的記憶體配置和解除分配使用 lpAllocateBufferlpAllocateMorelpFreeBuffer 所指向的函式,特別是在呼叫 IMAPIProp::GetPropsIMAPITable::QueryRows 等物件介面時,配置記憶體供用戶端應用程式使用。

呼叫者注意事項

一切可能的都是從對話框資源讀取,包括:

  • 頁面標題,也就是從資源中的對話框標題讀取之 DTBLPAGE 結構的 ulbLpszLabel 成員。

  • 所有控件標題,也就是從資源中的控件文字讀取之其他控件結構的 ulbLpszLabel 成員。

BuildDisplayTable 會以對話框資源的資訊覆寫輸入控件結構中傳遞的任何專案,這表示 BuildDisplayTable 的呼叫端無法動態指定頁面或控件標題。 需要這麼做的呼叫者可以讓 BuildDisplayTable 傳回 lppTableData 中的數據表數據物件,並在其中變更數據列;或者,他們可以改為在數據表數據物件中手動建置顯示數據表。

如果 lppTableData 未設定為 NULL,則提供者會在資料表數據物件完成顯示數據表時,負責釋放該數據表數據物件。