win32如何调用系统颜色对话框

win32如何调用系统颜色对话框,第1张

首先要包含commdlg.h头文件,这个是通用对话框的头文件,包括文件对话框,颜色对话框,打印对话框等。

然后再声明一个CHOOSECOLOR类型的变量,声明一个COLORREF类型的变量rgbLineColor,用来存储用户选择的颜色。 

static CHOOSECOLOR stChooseColor 

static COLORREF rgbLineColor 

(其中CHOOSECOLOR是一个结构体,包括了用ChooseColor函数来初始化颜色对话框的一些信息,可以从MSDN中查到这个结构体如下: 

typedef struct { 

DWORD lStructSize 

HWND hwndOwner 

HWND hInstance 

COLORREF rgbResult 

COLORREF* lpCustColors 

DWORD Flags 

LPARAM lCustData 

LPCCHOOKPROC lpfnHook 

LPCTSTR lpTemplateName 

} CHOOSECOLOR )

然后再对stChooseColor的内容进行赋值

`stChooseColor.lStructSize    = sizeof(CHOOSECOLOR)

           stChooseColor.hwndOwner      = hWnd

           stChooseColor.rgbResult      = rgbLineColor

           stChooseColor.lpCustColors   = (LPDWORD) dwCustColors

           stChooseColor.Flags          = CC_RGBINIT

           stChooseColor.lCustData      = 0

           stChooseColor.lpfnHook       = NULL

           stChooseColor.lpTemplateName = NULL `  12345678

最后用ChooseColor函数来创建一个颜色对话框供用户选择颜色

if (ChooseColor(&stChooseColor)){

   rgbLineColor = stChooseColor.rgbResult

}

C/C++中显示像素点的函数SetPixel函数原型:COLORREF

SetPixel(HDC

hdc,

int

X,

int

Y,

COLORREF

crColor);

参数:

hdc:设备环境句柄。

X:指定要设置的点的X轴坐标,按逻辑单位表示坐标。

Y:指定要设置的点的Y轴坐标,按逻辑单位表示坐标。

crColor:指定要用来绘制该点的颜色。头文件:wingdi.h:库文件:gdi32.lib


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/11896690.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存