您的位置:首页 > 其它

MFC常用宏(1)

2014-05-26 10:53 549 查看
LPCTSTR typedef const TCHAR *LPCTSTR;

L表示long指针 为了兼容早期windows系统,没有实际意义。

P表示这是一个指针

C表示这是一个常量

T表示在win32环境里,有一个_T宏

STR表示这个变量是一个字符串(string缩写)

LPCTSTR在win32下等价于const TCHAR*,可以跟CStringW通用

LPBYTE  typedef unsigned char FAR * LPBYTE;

COLORREF typedef DWORD COLORREF;

COLORREF用变量值描述颜色时对应下列16进制的形式0x00bbggrr,可以用如下结构体表示

RGB_value struct
{
byte red;
byte green;
byte blue;
byte unused;
};

COLORREF是一个32位整型数值,它代表了一种颜色。可以用RGB宏初始化

如:COLORREF color = RGB(0, 255, 0);  宏内三个参数依次为R,G,B,所以此颜色为绿色

从RGB中获取颜色值的方法:

BYTE r = GetRValue(color);
BYTE g = GetGValue(color);
BYTE b = GetBValue(color);


另外在MFC里可以通过MFC自带文件框读取颜色

CColorDialog colorDialog;
COLORREF color;
if( colorDialog.DoModal() == IDOK )
{
color = colorDialog.GetColor();
}

CStringW str;
BYTE r = GetRValue(color);
BYTE g = GetGValue(color);
BYTE b = GetBValue(color);
str.Format(L"颜色值为红:%d 绿:%d 蓝:%d", r, g, b);
MessageBox(str);




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  个人笔记