VBA呼叫系統調色盤

2021-08-25 22:18:54 字數 1358 閱讀 1826

在excel中設定單元格字型格式時,使用者可以在調色盤中選擇顏色,如下圖所示。

在vba**中如何提供調色盤讓使用者選擇顏色呢?

一種方法是呼叫excel的系統對話方塊實現設定顏色,對話方塊如下圖所示。

但是,並不是所有的格式設定都有與之對應的系統對話方塊可以在**中呼叫,所以呼叫系統調色盤供使用者選擇顏色,然後使用**設定格式是更加通用的實現方式。

type udtcolor

lstructsize as

long

hwndowner as

long

hinstance as

long

rgbresult as

long

lpstrcolors as

string

flags as

long

lcustdata as

long

lpfnhook as

long

lptemplatename as

long

end type

declare

function choosecolora lib

"comdlg32" _

(lpchoosecolor as udtcolor) as

long

sub demo030()

dim strcolors as

string * 16

dim udtmycolor as udtcolor

with udtmycolor

.lstructsize = 36

.lpstrcolors = strcolors

endwith

if choosecolora(udtmycolor) = 0

then

exit

sub [a1].font.color = udtmycolor.rgbresult

endsub

第21行**呼叫api函式choosecolora,顯示系統調色盤如下圖,使用者選擇的顏色儲存在udtmycolor中。

第22行**中udtmycolor.rgbresult返回顏色的rgb值,用於設定字型顏色。

調色盤工作原理

來自於 http blog.csdn.net pkeel archive 2007 03 27 1542425.aspx 調色盤工作原理 顯示器可以被設定成16 256 64k 真彩色等顯示模式,前兩種模式需要調色盤。在16或256色模式下,程式必須將想要顯示的顏色正確地設定到調色盤中,這樣才能顯示...

調色盤工作原理

調色盤工作原理 顯示器可以被設定成16 256 64k 真彩色等顯示模式,前兩種模式需要調色盤。在16或256色模式下,程式必須將想要顯示的顏色正確地設定到調色盤中,這樣才能顯示出預期的顏色。如圖為乙個256色顯示模式中的調色盤的工作原理 createpalette 只是建立了邏輯調色盤,此時調色盤...

Qt 筆記 調色盤

qpalette類包含了元件狀態的顏色組 qpalette物件包含了3個狀態的顏色描述 啟用顏色組 active 元件獲得焦點使用的顏色搭配方案 非啟用顏色組 inactive 元件失去焦點使用的顏色方案 失效顏色組 disabled 元件處於不可用狀態使用的顏色方案 qpalette中的顏色組定義...