C#Form2.ShowDialog()和鼠标光标

时间:2017-10-23 04:43:44

标签: c# compact-framework windows-ce

(.NET Compact Framework 3.5,Windows CE 6.0)

我想隐藏鼠标光标 所以,我使用Curosr.Hide()

我有两种形式,Form1,Form2 Form2的大小小于Form1 PictureBox1在Form1中 单击PictureBox1时,将打开Form2。 (模态)

此时,鼠标光标突然出现在Form2的区域之外 MouseDonw PictureBox1 - > Form2.ShowDialog - >显示MouseCursor

我从未做过Cursor.Show()

为什么会出现鼠标光标?

增加了以下内容  我从' MouseDown事件'移动了Form2.ShowDialog()。到了“MouseUp Event'”。然后就解决了。为什么呢?

1 个答案:

答案 0 :(得分:0)

首先,表演节目和其他行动'通常是通过鼠标点击事件完成的。鼠标按下和鼠标按下后会触发。

如果你打破了正常的序列,即在鼠标按下事件上显示一个表格,则GUI处于“鼠标按下/移动”状态。模式,例如拖动元素或绘制线条。

由于每个元素都可以显示/隐藏鼠标光标,因此窗口系统会识别第二个窗体上的光标隐藏,但第一个窗体仍然显示鼠标光标,因为鼠标向上事件未完成。

如果您想了解有关基础知识的更多信息,您应该查看本机WndProc以及如何处理Window消息。 Charles Petzold的Windows编程仍然是Windows编程的圣经。