CHOOSECOLORA 結構 (Rich Edit 2.0)
包含 ChooseColor 函式用來初始化 [色彩 ] 對話框的資訊。 使用者關閉對話框之後,系統會傳回此結構中用戶選取專案的相關信息。
語法
typedef struct tagCHOOSECOLORA {
DWORD lStructSize;
HWND hwndOwner;
HWND hInstance;
COLORREF rgbResult;
COLORREF *lpCustColors;
DWORD Flags;
LPARAM lCustData;
LPCCHOOKPROC lpfnHook;
LPCSTR lpTemplateName;
LPEDITMENU lpEditInfo;
} CHOOSECOLORA, *LPCHOOSECOLORA;
成員
lStructSize
類型: DWORD
結構的長度,以位元組為單位。
hwndOwner
類型: HWND
擁有對話框之視窗的句柄。 此成員可以是任何有效的視窗句柄,如果對話框沒有擁有者,則為 NULL 。
hInstance
類型: HWND
如果在 Flags 成員中設定了CC_ENABLETEMPLATEHANDLE旗標,hInstance 是包含對話框範本的記憶體物件句柄。 如果 已設定CC_ENABLETEMPLATE 旗標, hInstance 是模組的句柄,其中包含 由 lpTemplateName 成員命名的對話框範本。 如果未設定 CC_ENABLETEMPLATEHANDLE 或 CC_ENABLETEMPLATE ,則會忽略這個成員。
rgbResult
類型: COLORREF
如果 已設定CC_RGBINIT 旗標, rgbResult 會指定建立對話框時最初選取的色彩。 如果指定的色彩值不在可用的色彩之間,則系統會選取可用的最接近純色。 如果未設定 rgbResult 為零或 CC_RGBINIT ,則最初選取的色彩為黑色。 如果使用者按兩下 [ 確定 ] 按鈕, rgbResult 會指定使用者的色彩選取範圍。 若要建立 COLORREF 色彩值,請使用 RGB 宏。
lpCustColors
類型: COLORREF*
16 個值的指標,其中包含對話框中自定義色彩方塊的紅色、綠色、藍色 (RGB) 值。 如果使用者修改這些色彩,系統會以新的 RGB 值更新數位。 若要在對 ChooseColor 函式的呼叫之間保留新的自定義色彩,您應該為數位配置靜態記憶體。 若要建立 COLORREF 色彩值,請使用 RGB 宏。
Flags
類型: DWORD
一組位旗標,可用來初始化 [色彩 ] 對話框。 當對話框傳回時,它會設定這些旗標來指出用戶的輸入。 這個成員可以是下列旗標的組合。
值 | 意義 |
---|---|
|
讓對話框在基本色彩集中顯示所有可用的色彩。 |
|
啟用這個 結構的 lpfnHook 成員中指定的攔截程式。 此旗標僅用於初始化對話框。 |
|
hInstance 和 lpTemplateName 成員會指定要用來取代預設範本的對話框範本。 此旗標僅用於初始化對話框。 |
|
hInstance 成員會識別包含預先載入對話框範本的數據區塊。 如果指定這個旗標,系統就會忽略 lpTemplateName 成員。 此旗標僅用於初始化對話框。 |
|
讓對話框顯示可讓使用者建立自訂色彩的其他控制件。 如果未設定此旗標,用戶必須按兩下 [ 定義自訂色彩 ] 按鈕以顯示自訂色彩控制件。 |
|
停用 [ 定義自訂色彩 ] 按鈕。 |
|
讓對話框使用 rgbResult 成員中指定的色彩做為初始色彩選取範圍。 |
|
導致對話框顯示 [說明] 按鈕。 hwndOwner 成員必須指定視窗,以接收當使用者按兩下 [說明] 按鈕時,對話框所傳送的 HELPMSGSTRING 已註冊訊息。 |
|
讓對話框只會在基本色彩集中顯示純色。 |
lCustData
類型: LPARAM
系統傳遞至 lpfnHook 成員所識別的攔截程式的應用程式定義數據。 當系統將 WM_INITDIALOG 訊息傳送至攔截程式時,訊息的 lParam 參數是建立對話框時所指定 CHOOSECOLOR 結構的指標。 攔截程式可以使用這個指標來取得 lCustData 值。
lpfnHook
類型: LPCCHOOKPROC
CCHookProc 攔截程式的指標,可處理用於對話框的訊息。 除非在 Flags 成員中設定CC_ENABLEHOOK旗標,否則會忽略這個成員。
lpTemplateName
類型: LPCTSTR
hInstance 成員所識別模組中的對話框範本資源名稱。 此範本會取代標準對話框範本。 針對編號對話框資源, lpTemplateName 可以是 MAKEINTRESOURCE 宏所傳回的值。 除非在 Flags 成員中設定CC_ENABLETEMPLATE旗標,否則會忽略這個成員。
lpEditInfo
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 10 組建 20348 |
最低支援的伺服器 | Windows 10 組建 20348 |
標頭 | commdlg.h |
另請參閱
概念
參考