由鼠标生成的用户界面事件的常规标记。这包括按下/释放按钮,单击(包括双击/三击),移动,拖动等。
我正在使用 MobaXterm 从 Windows 10 SSH 到 Linux。 Windows 有两个屏幕。打开应用程序(它是 Qt 应用程序)远程显示其窗口,但是鼠标左键单击不起作用。
为什么 MouseLeftButtonUp 在 WPF 中不触发?
为什么 Canvas 上的 MouseLeftButtonUp 在我的 WPF 应用程序中没有触发? 这是 XAML: 为什么 Canvas 上的 MouseLeftButtonUp 在 WPF 应用程序中没有触发? 这是 XAML: <Grid Height="300" Width="400"> <Canvas Name="canvas" MouseMove="canvas_MouseMove" MouseLeftButtonUp="canvas_MouseLeftButtonUp" Background="LightGray"/> </Grid> 代码: private bool hasClicked = false; public Window1() { InitializeComponent(); } private void canvas_MouseMove(object sender, MouseEventArgs e) { if (!this.hasClicked) { this.Cursor = Cursors.None; this.canvas.Children.Clear(); this.insertRectangle(false); } } private void insertRectangle(bool filled) { Rectangle rect = createRect(filled); Point pos = Mouse.GetPosition(this.canvas); Canvas.SetLeft(rect, pos.X); Canvas.SetTop(rect, pos.Y); this.canvas.Children.Add(rect); } private Rectangle createRect(bool fill) { Rectangle rect = new Rectangle(); rect.Height = 50; rect.Width = 120; if (fill) { rect.Fill = new SolidColorBrush(Colors.Green); } else { rect.Stroke = new SolidColorBrush(Colors.Green); } return rect; } private void canvas_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { this.hasClicked = true; this.insertRectangle(true); this.Cursor = Cursors.Arrow; } 编辑:我尝试向画布添加背景颜色,但事件仍然没有触发。看起来 MouseMove 以某种方式覆盖了 MouseLeftButtonUp。 Edit2:如果我删除 MouseMove 事件,mouseLeftButtonUp 将触发。 Edit3:更大的代码示例。 在insertRectangle方法中,如果我使用 Canvas.SetTop(rect, 50); instead of Canvas.SetTop(rect, pos.Y); 事件发生得很好。 如果你不在画布上设置Background,它似乎不会关注你的鼠标事件。 尝试: <Grid> <Canvas Name="canvas" MouseMove="canvas_MouseMove" MouseLeftButtonUp="canvas_MouseLeftButtonUp" Background="White" /> </Grid> 通过不清除画布,而是在 mouseMove 方法中移动预览矩形解决了问题。 我的解决方案是完全放弃 MouseLeftButtonUp 处理程序,而是对 MouseMove 进行初始检查以查看按钮是否处于释放状态。如果是的话我将拖动设置为 false。 private void Canvas_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { isDragging = true; } private void Canvas_MouseMove(object sender, MouseEventArgs e) { if (e.LeftButton == MouseButtonState.Released) { isDragging = false; } }
为什么 Angular 2 中的自定义组件的 click() 函数会触发两次?
我的自定义组件的 click() 函数被触发两次 - 自定义组件的事件和示例级别事件都被触发。 这是我的 Plunker。
p-inputNumber 按钮 - 使用向下箭头时输入值为空
我使用 p-inputNumber 按钮来允许用户为表列选择过滤器值。 不幸的是,如果我使用向下箭头并选择值 0,则鼠标事件就不是
如何模拟正确点击 GitHub 上的“显示更多工作流程...”按钮?
我正在尝试在 Firefox 上使用 Tempermonkey 用户脚本,在像这样的 Github 存储库中单击“显示更多工作流程...”。但不知何故使用这段代码 // ==用户脚本== // @name ...
nswindow样式为fullSizeContentView时如何处理mouseEntered:和mouseExited:事件?
我有一个 macOS 应用程序,其视图占据整个窗口,并在窗口的 styleMask 中设置了 NSWindowStyleMaskFullSizeContentView。我想在...
如果鼠标按钮按下(Windows 窗体),MouseLeave 和 MouseEnter 将不会触发
标题说明了一切。我有一个充当白板的面板。在鼠标移动时绘制鼠标轨迹..工作正常,但是如果鼠标离开面板的边缘,我想调用鼠标向上事件...
是否可以使用给定的坐标来模拟网页中 JavaScript 的点击?
我正在使用 JavaScript 中的双击事件侦听器,以在用户双击某些文本元素时触发操作。但是,我还有另一个响应文本的事件监听器
Vite + Typescript 无法调用 onClick 函数,未定义
我正在Vite + Typescript中开发天气应用程序,没有框架,只是简单的TS。 我想要每个天气列表项都有删除功能。当我点击删除按钮 clickedID 被传递到
我创建了一个项目,当我们触摸立方体时,它会旋转。我希望当用户停止触摸立方体时,立方体返回到其原始位置。下面我添加了源代码...
用户通过鼠标调整 WPF DataGrid 列大小时如何获取事件
如何获取由用户交互(鼠标左键+鼠标移动)调用的列调整大小事件。 我尝试了 SizeChanged 事件,但当新项目添加到 DataGrid 时也会触发它(机智...
有没有办法用任意增量触发滚轮事件? 就像 jQuery 对“点击”所做的那样: $('#selector').trigger('点击'); 我需要类似的东西,只是带有滚动轮......
我有一个网络应用程序,具有沉浸式视图。在此视图中,我可以使用鼠标滚轮操作放大或缩小。 我想做的是创建 2 个调用 JavaScript 函数的按钮和
未捕获的类型错误:无法读取 null 的属性“dispatchEvent”。不知道发生了什么
我正在尝试创建一个 Chrome 扩展程序,它允许我按下键盘上的某个键,并将其映射到屏幕上的 HTML 按钮。我只是想让点击开始工作,甚至在打扰我之前......
Mouseenter 事件监听器在元素内移动鼠标时触发多次,但仅在更新innerHTML时触发
在我的代码中,我尝试更新 mouseenter 事件上按钮的innerHTML。 我希望每次鼠标移入元素时该事件都会触发一次,但当我的鼠标处于
这是我的第一个问题 - 我希望它有意义。 我有一个可滚动的网格 tkinter 框架,其中由表格填充。 该表有 10 列固定宽度。 行数为 var...
我正在设计一个可视化效果,首先用户在屏幕上绘制点,如下所示:https://jsfiddle.net/jtr13/j2yrknf3/25/ 代码的相关部分(受此答案启发)...
出于某种原因,我仅限于使用“maps”包为以传单为中心的 R Shiny 应用程序生成地图(即我不能使用形状文件、栅格等。它必须是地图对象);然而,我正在跑步
所以我一直在开发一个主要使用 tkinter 模块的项目,当我开始尝试使用按钮时,我发现我实际上不能只是单击它们。我必须点击、按住、然后...