首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

请教在C#中SetDIBColorTable这个函数的调用形式是如何样的

2012-11-11 
请问在C#中SetDIBColorTable这个函数的调用形式是怎么样的。[DllImport(Gdi32.dll, SetLastError true)

请问在C#中SetDIBColorTable这个函数的调用形式是怎么样的。
[DllImport("Gdi32.dll", SetLastError = true)]
 public static extern uint SetDIBColorTable(IntPtr Hdc, int un1, int un2, ref RGBQUAD pcRGBQUAD);

我自己试着这样搞:

 NativeApi.SetDIBColorTable(hdc, 0, bmp.Palette.Entries.Length, ref bmp.Palette.Entries[0]);
最后一个参数总是不行。

在VB中调用很简单, SetDIBColorTable m_Hdc, 0, m_Palette.Count, m_Palette.Entries(0) 就可以了。

麻烦前辈指点下。

[解决办法]
RGBQUAD 这是什么,自己定义的?

[DllImport("Gdi32.dll", SetLastError = true)]
public static extern uint SetDIBColorTable(IntPtr Hdc, int un1, int un2, Color[] pcRGBQUAD);
NativeApi.SetDIBColorTable(hdc, 0, bmp.Palette.Entries.Length, bmp.Palette.Entries);
这样试试

热点排行