【发布时间】:2010-07-31 18:21:34
【问题描述】:
我们可以在表单之外绘制图像和绘制文本吗……我的意思是在外面……
我知道要问它愚蠢的问题,但我们可以...
【问题讨论】:
我们可以在表单之外绘制图像和绘制文本吗……我的意思是在外面……
我知道要问它愚蠢的问题,但我们可以...
【问题讨论】:
您可以通过创建表单并将其 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);
【讨论】:
你不能利用不存在的东西。根据该定义,表单的外部区域不存在于表单的上下文中。
我同意 Henk 的观点,不过,您可以使用透明表格。
【讨论】: