gpt4 book ai didi

WPF。捕捉最后一个窗口点击任意位置

转载 作者:行者123 更新时间:2023-12-04 13:35:28 25 4
gpt4 key购买 nike

无论如何,一个类可以捕获应用程序中的最后一次点击吗?就像是

public class MyClickManagerClass
{
public MyClickManagerClass()
{
// subscribe to a global click event
}

private void GlobalClickEventHandler(object sender, EventArgs e)
{
// do something with the click here
}
}

谢谢你的时间!

最佳答案

如果您只想捕获给定 Window 中任意位置的鼠标点击,只需订阅 MouseDownPreviewMouseDown在窗口级别可以解决问题。

如果你真的希望它对应用程序是全局的(而不仅仅是对窗口),你应该订阅 InputManager.PreProcessInputInputManager.PostProcessInput事件并观察鼠标事件:

public MyClickManagerClass()
{
InputManager.Current.PreProcessInput += (sender, e) =>
{
if(e.StagingItem.Input is MouseButtonEventArgs)
GlobalClickEventHandler(sender,
(MouseButtonEventArgs)e.StagingItem.Input);
}
}

请注意,“sender”将始终是 InputManager,但您可以使用 MouseEventArgs.GetPosition(visual) 将坐标映射到其他控件。 .

关于WPF。捕捉最后一个窗口点击任意位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2105607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com