问题标签 [mousemotionevent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
991 浏览

java - Java:按住鼠标时基于二维数组填充图形

所以我有一个由二维数组的内容填充的 JPanel。我有一个鼠标监听器,它在按下时会改变单元格的颜色。我的问题是,是否可以让用户将鼠标拖到一行单元格上并连续为它们着色?我研究了鼠标运动监听器,但这似乎没有帮助。

有任何想法吗?

0 投票
0 回答
175 浏览

java - JAVA:鼠标拖动事件精度

在我的程序中设置动态组件时,我注意到每当组件(JPanel)被重新定位时都会出现一些闪烁。因此,我使用以下方法在每个拖动事件中打印了鼠标位置:

它得出了一些有趣的结果。从左到右以正常速度拖动,我在控制台中得到以下输出:

您会注意到随着跟踪的进行,这些数字会先升后降。我以前通过对其进行一些数学运算来解决此问题,但现在我想知道为什么以及如何使其正常工作。某些是否MouseEvents在其事件前身之前处理?

0 投票
2 回答
989 浏览

java - 如何不断找到相对于面板的鼠标位置?

我正在使用 MouseListeners,我希望它告诉我鼠标位置,而无需单击或按住鼠标。所以我知道它在哪里徘徊。我该怎么做呢?

我有这样的代码,可以在按下时找到位置,但我不确定如何一直找到位置。

0 投票
1 回答
7643 浏览

java - MouseAdapter 方法 - 为什么包括 `mouseDragged`、`mouseMoved` 和 `mouseWheelMoved`?

我的目标是简化这段代码(一切正常):

但如果我决定这样使用MouseAdapter

mouseDragged不接收任何事件。但如果我MouseMotionListener这样添加:

然后一切恢复正常。所以我的问题是 -如果它们不起作用,课堂mouseDragged上的目的mouseMovedmouseWheelMoved方法是什么?MouseAdapter

0 投票
1 回答
569 浏览

java - 是否可以将 MouseMotionListener 添加到 BufferedImage?

我正在开发一个在 Jpanel 中拖动和缩放图像的应用程序。

图像存储在 JLabel 中。

但是当我将 MouseMotionListener 添加到面板时,整个窗口都在拖动,当我尝试添加 MouseMotionListener 时,我无法选择图像的侧面来缩放它。

那么我可以直接将 MouseMotionListener 添加到 BufferedImage 吗?

对于我添加 MouseMotionListener 的任何组件,它不允许我选择图像的侧面。边表示缩放图像的所有方向。

窗户 :

J标签:

MouseHandler是为各种操作定义的类,如mousePressed, mouseDragged,mouseMove等。

知道为什么会这样吗?

0 投票
0 回答
32 浏览

java - 为什么我的标签直到我在鼠标滚轮事件后调用它时才移动?

drag是我正在拖动的标签,直到我再次拖动它之后,它才会将位置设置为鼠标位置。

0 投票
1 回答
491 浏览

java - 查找两点之间的角度时出错

这个问题很难解释,所以我会用一张图片来帮助我:

错误图像

我正在尝试在水箱中间与鼠标之间找到一个角度。橙色点表示鼠标位置,红线将两个实例分开,绿色/石灰线表示坦克的炮塔角度。我已经多次查看堆栈溢出,但无济于事,我找到了解决问题的方法。我什至用谷歌搜索过。在这两种情况下,我都找到了很多组代码来“寻找角度”。我确信这些工作,所以我怀疑我的问题出在糟糕的代码手中。我这个错误是在 MouseMotionListener 中发现的。

我用来创建伪线(不是绿线或红线)的两个点是坦克的中点new Point(Tank.getX() + 16, Tank.getY() + 16)(坦克大小为 32x32)和鼠标点(当有新的鼠标移动事件时设置)。

关于我的程序的详细信息:

  • 创建了一个框架并附加了一个 MouseMotionListener。
  • 一个 JPanel 被创建并添加到框架中。
  • 一切都被绘制到 JPanel 上。

简而言之,我的getAngle()代码错了,我的 MouseMotionListener 错了,或者我给出了错误的参数。问题是什么?...

编辑:正如评论中所要求的,这里是我的代码和输出:

代码:

输出:

0 投票
1 回答
2091 浏览

java - 简单的Java Paint程序:如何在不改变之前绘制的情况下改变颜色

我正在编写简单的 Paint 程序,你可以通过拖动鼠标来绘制任何你想要的东西。您可以更改画笔的颜色和大小,但是在这个版本中,当我更改画笔的颜色或大小时,当我通过拖动鼠标再次开始绘制时,之前绘制的所有内容也会更改。我曾尝试在paintComponent 方法中使用getGraphics 方法,但我可能做错了,因为它对我没有帮助。有什么想法可以解决这个问题吗?谢谢你。

没有集合可以选择吗?

0 投票
2 回答
593 浏览

java - Java Swing中MouseMotionListener的适当方法如何?

考虑一下class

现在让我们说mouse drag event发生了。怎么MouseMotionHandler知道调用哪个方法。实现的两种方法。或者当发生事件时,如何在运行时解决要调用的方法event

如果MouseEvent event传递给这些方法的是MouseDrag Event,那么它是如何mouseDragged被调用的。

它怎么知道这是一个MouseDrag事件而不是MouseMove事件?

0 投票
2 回答
689 浏览

java - java - 如何知道鼠标在java中的jpanel内是向左还是向右拖动

我的 jpanel 代码中有 mouseMotionListener。

但是我怎么知道鼠标在jpanel内是向左还是向右拖动呢?