C++动态库的导出函数中用到了D3DCOLOR_XRGB(255, 255, 0),C#该如何写呢
C++动态库的导出函数中用到了D3DCOLOR_XRGB(255, 255, 0),C#该怎么写呢~
C++动态库的导出函数中用到了D3DCOLOR_XRGB(255, 255, 0),定义段代码为:
#define D3DCOLOR_ARGB(a,r,g,b) \
((D3DCOLOR)((((a)&0xff)<<24)|(((r)&0xff)<<16)|(((g)&0xff)<<8)|((b)&0xff)))
#define D3DCOLOR_RGBA(r,g,b,a) D3DCOLOR_ARGB(a,r,g,b)
#define D3DCOLOR_XRGB(r,g,b) D3DCOLOR_ARGB(0xff,r,g,b)
#define D3DCOLOR_XYUV(y,u,v) D3DCOLOR_ARGB(0xff,y,u,v)
#define D3DCOLOR_AYUV(a,y,u,v) D3DCOLOR_ARGB(a,y,u,v)
求问在C#中应该怎么使用D3DCOLOR_XRGB(255, 255, 0),感谢~
------解决思路----------------------
宏定义一般是自己用c#再写一遍,不过你这个可以直接用 System.Drawing.Color.FromArgb(255, 255, 0).ToArgb() ,和那个宏定义一个作用
------解决思路----------------------
D3DCOLOR是定义为DWORD的,DWORD是c#的uint,那个ToArgb()返回的是int,非要严格点,转uint也一样
C++动态库的导出函数中用到了D3DCOLOR_XRGB(255, 255, 0),定义段代码为:
#define D3DCOLOR_ARGB(a,r,g,b) \
((D3DCOLOR)((((a)&0xff)<<24)|(((r)&0xff)<<16)|(((g)&0xff)<<8)|((b)&0xff)))
#define D3DCOLOR_RGBA(r,g,b,a) D3DCOLOR_ARGB(a,r,g,b)
#define D3DCOLOR_XRGB(r,g,b) D3DCOLOR_ARGB(0xff,r,g,b)
#define D3DCOLOR_XYUV(y,u,v) D3DCOLOR_ARGB(0xff,y,u,v)
#define D3DCOLOR_AYUV(a,y,u,v) D3DCOLOR_ARGB(a,y,u,v)
求问在C#中应该怎么使用D3DCOLOR_XRGB(255, 255, 0),感谢~
------解决思路----------------------
宏定义一般是自己用c#再写一遍,不过你这个可以直接用 System.Drawing.Color.FromArgb(255, 255, 0).ToArgb() ,和那个宏定义一个作用
------解决思路----------------------
D3DCOLOR是定义为DWORD的,DWORD是c#的uint,那个ToArgb()返回的是int,非要严格点,转uint也一样