绘制/绘制外部形式

时间:2010-07-31 18:21:35

标签: c# winforms draw paint

我们可以在一个表格之外绘制图像和绘制文字......我的意思是字面意思在外面......

我知道要问的愚蠢问题,但我们可以......

2 个答案:

答案 0 :(得分:10)

您可以通过创建表单并将其TransparentColor属性设置为其背景颜色来“欺骗”,然后在其上绘制。但是,这会禁止您绘制透明色,因为它不会显示。

或者您实际上可以直接绘制到桌面。

[DllImport("User32.dll")]
public static extern IntPtr GetDC(IntPtr hwnd);
[DllImport("User32.dll")]
public static extern void ReleaseDC(IntPtr dc);

IntPtr desktopPtr = GetDC(IntPtr.Zero);
Graphics g = Graphics.FromHdc(desktopPtr);

// Do graphics manipulation here with "g" object

// Very important - free desktop graphics.
g.Dispose();
ReleaseDC(desktopPtr);

答案 1 :(得分:1)

你无法利用不存在的东西。根据该定义,表单的 区域在表单的上下文中不存在。

我同意Henk的观点,你 可以 在透明表格上画画。