我正在尝试将光标锁定到表单中,这是针对鼠标锁定器应用程序,我正在尝试处理光标,以便在解锁时重置 Cursor.Clip 。 / p>

到目前为止,我有:

Cursor.Clip = new Rectangle(x +8, y +30, Size.Width -16, Size.Height -38);

工作正常。

但我无法弄清楚当它们解锁时如何清除它。 我试过 Cursor.Dispose(); 但是这不起作用。

有什么想法吗? 感谢。

有帮助吗?

解决方案

Clip 设置为包含屏幕尺寸的 Rectangle

Cursor.Clip = Screen.PrimaryScreen.Bounds;

当然,这不适用于双显示器设置,但你明白了。

其他提示

实际上,我们的想法是将其设置为一个新的矩形

Cursor.Clip = new Rectangle();

无论情况如何,都可以。

试试这个:当你的应用程序启动时,获取 Cursor.Clip 的值并将其保存为未剪切的值。然后,当您想要重置剪辑时,请指定未剪辑的值。

更新在此页中,它说明了要在VB.NET中解开光标,只需执行 Cursor.Clip = Nothing 即可。但这很奇怪,因为Rectangle是一个结构,因此它不能设置为null。所以在C#中,可能是 Cursor.Clip = Rectangle.Empty Cursor.Clip = default(Rectangle)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top