我试着换成RGB(189,158,122),可是看着不对

解决方案 »

  1.   

    有三个宏
    GetRValue()  //红色
    GetGValue()  //绿色
    GetBValue()  //蓝色
      

  2.   

    DWORD dw = 0x00BD9E7B;
    COLORREF clf = dw;
    int r,g,b;
    r = clf.getRValue();
    g = clf.getGValue();
    b = clf.getBValue();
      

  3.   

    呵呵,楼上的各位,我是学C#的,正在看段VC代码(想将其转为C#的),你们上面说的是用VC中的函数转,我不会VC呀,遇到这样的十六进制颜色值,用手工转不出来吗?
    如:R = 11*16+13;
    G = 9*16+14;
    B=7*16+10
    这样不对吗?应该怎样?
      

  4.   

    DWORD dw = 0x00BD9E7B;
    BD 两位是blue的值
    9E 两位是green的值
    7B 两位是red的值int r,g,b;
    r = GetRValue(dw);
    g = GetGValue(dw);
    b = GetBValue(dw);
      

  5.   

    R = 11*16+13;
    G = 9*16+14;
    B=7*16+10;
    对呀!
      

  6.   

    b = (0x00BD9E7B>>0x10)&0x000000ff;
    g = (0x00BD9E7B>>0x08)&0x000000ff;
    r = 0x00BD9E7B&0x000000ff;