IntPtr.Zero在System.Drawing.Graphics中的含义是什么

时间:2016-05-06 15:06:41

标签: c# .net winapi intptr word-addins

我需要在下面的函数中获得IntPtr.Zero的确切含义。 我使用此函数将word文档文本范围位置像素值转换为WPF单位值。

Graphics g = Graphics.FromHwnd(IntPtr.Zero)

通常说通过把手,但我没有得到它。

2 个答案:

答案 0 :(得分:3)

Graphics.FromHwnd方法用于从窗口的指定处理程序创建Graphics对象。

当您将IntPtr.Zero作为参数传递时,您将从Windows桌面创建Graphics,以便直接在屏幕上绘制。

答案 1 :(得分:1)

IntPtr是一种表示句柄或指针的平台特定方式。在32位系统上,指针是32位宽,而在64位系统上,指针是64位宽。存在此类型是为了隐藏这些差异。

IntPtr.Zero表示值为0(基本上为null)的句柄或指针。您可以在API期望Windows API样式句柄的位置使用它,例如在示例中的FromHwnd调用中。在Windows API中,HWND是一个窗口句柄,其中null表示"没有窗口"。要通过C#传递此信息,请使用IntPtr.Zero