将鼠标悬停在应用程序的可见部分上时显示基础应用程序鼠标光标

时间:2010-06-06 00:21:06

标签: .net wpf mouse pointers cursor

我正在编写一个WPF应用程序,允许用户在按住鼠标右键时绘制整个屏幕。我使用全屏透明覆盖形式来实现这一点,但是,当我用鼠标绘制线条时,发生的事情是我的窗口包含线条的部分变得可见(如预期的那样)。这种不受欢迎的影响是,如果该行位于另一个应用程序(如文本框或超链接)的一部分上,则会将光标更改回我的应用程序的默认光标(箭头),而不是其他应用程序所需的光标(IBeam) )。我希望我的叠加层能够与用户无缝连接,只显示它们的绘图路径,而不是与鼠标光标进行任何交互。

请参阅下面的示例:

alt text http://i47.tinypic.com/2qlg9rs.png

1 个答案:

答案 0 :(得分:1)

请参阅this thread获取解决方案,但这可能与您捕获鼠标事件的方式有冲突。您可以尝试鼠标挂钩或尝试将输入传递到窗口underneath。您可能希望将搜索范围扩展到win32,wndproc等。在这种情况下,从WM_NCHITTEST返回HTTRANSPARENT也不起作用。