ChooseColor函数

本文介绍了一个使用CHOOSECOLOR结构体实现的颜色选择对话框的详细代码示例。通过初始化CHOOSECOLOR结构并调用ChooseColor函数,展示了如何让用户选择特定的RGB颜色,并通过按位运算获取颜色的红绿蓝分量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 注意可能会查不到CHOOSECOLOR结构体,需手动添加#include “Commdlg.h”。

void CALLBACK TextColorSet()
{
	CHOOSECOLOR cc;                 // common dialog box structure 
	static COLORREF acrCustClr[16]; // array of custom colors 
	HWND hwnd;                      // owner window
	static DWORD rgbCurrent;        // initial color selection

									// Initialize CHOOSECOLOR 
	ZeroMemory(&cc, sizeof(cc));
	cc.lStructSize = sizeof(cc);
	cc.hwndOwner = temHwnd;
	cc.lpCustColors = (LPDWORD)acrCustClr;
	cc.rgbResult = rgbCurrent;
	cc.Flags = CC_FULLOPEN | CC_RGBINIT;

	if (ChooseColor(&cc) == TRUE) {
		rNum = (cc.rgbResult & 0x0000ff);
		gNum = (cc.rgbResult & 0x00FF00) >> 8;
		bNum = (cc.rgbResult & 0xff0000) >> 16;    //按位运算将其返回值给对应参数
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值