【问题标题】:Draw under mouse pointer at the desktop在桌面上的鼠标指针下绘制
【发布时间】:2012-03-13 17:38:32
【问题描述】:

我想在桌面上的鼠标光标下绘图(不仅仅是在我的表单上)。我尝试了一个最顶部最大化的透明表单,但由于表单是透明的,我无法获得鼠标移动事件。

要使其透明: 背景颜色 = TransparencyKey 颜色


我能够获取鼠标位置 (http://www.codeproject.com/Articles/7294/Processing-Global-Mouse-and-Keyboard-Hooks-in-C?msg=4189292#xx4189292xx) 并绘制使用 Paint 事件进行屏幕显示:D

【问题讨论】:

    标签: c# mouseevent draw


    【解决方案1】:

    将表单不透明度设置为 1% 而不是 0%。

    【讨论】:

    • 不透明度为 100%。背景颜色与transparentKey颜色相同,这样鼠标在桌面上工作。
    • 您可以在桌面上方的窗体上绘图,但在不属于您的窗口(例如,系统拥有的桌面)上绘图是一个糟糕的主意。放下 TransparentKey 并将不透明度设置为 1%(这会捕获鼠标输入)。然后创建一个使用 LayeredWindow API 的新表单(这是您绘制的对象)
    • 但是我想画在上面的表格,问题是我不能再得到鼠标的位置了。如果我使用不透明度而不是透明度键,我可以获得鼠标位置,但我无法在桌面上单击。
    • 我用这个解决的鼠标位置:codeproject.com/Articles/7294/…。但我现在需要在表格上画图
    猜你喜欢
    • 1970-01-01
    • 2012-06-05
    • 2018-08-12
    • 1970-01-01
    • 2013-04-14
    • 1970-01-01
    • 2023-04-04
    • 2021-04-03
    • 1970-01-01
    相关资源
    最近更新 更多