关于 COLOREF 和 unsigned long int 的问题
Slay 2001-02-06 10:37:00 有这样一段代码:
void CDlg::Fun1(CDC *pDC, COLORREF Color)
{
COLORREF cl;
......
cl=memDC.GetPixel(x,y);
......
if (cl==TransColor)
{
...... //do something here
}
}
同样是红色传进来的是16711680,而通过GetPixel取得的就是255,所以比较时就会出错,如果是其他颜色就不会出现问题,黑色或白色也不会,因为都是0或0x00FFFFFF。我想是不是COLOREF和 unsigned long int 存在转换的问题。有谁可以帮我解决一下?