Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在JPanel中移动图像_Java_Swing_Jpanel - Fatal编程技术网

Java 如何在JPanel中移动图像

Java 如何在JPanel中移动图像,java,swing,jpanel,Java,Swing,Jpanel,我对Java Swing非常陌生,我想使用MouseInputAdaptor在JPanel中移动图像。我用谷歌搜索它,但找不到非常简单的版本。我花了很多时间,我发现我应该使用mouseDragged,mousePressed方法,但是我如何应用于特定的图像,假设如果尝试拖动,我如何使该图像移动 请解释一下 您可以使用mouseDragged()方法执行此操作 取两个全局变量X和Y。现在在JPanel的绘制方法中如下所示绘制图像: public void paintComponent(Graph

我对Java Swing非常陌生,我想使用MouseInputAdaptor在JPanel中移动图像。我用谷歌搜索它,但找不到非常简单的版本。我花了很多时间,我发现我应该使用mouseDragged,mousePressed方法,但是我如何应用于特定的图像,假设如果尝试拖动,我如何使该图像移动


请解释一下

您可以使用
mouseDragged()
方法执行此操作

取两个全局变量
X
Y
。现在在JPanel的
绘制方法中
如下所示绘制图像:

 public void paintComponent(Graphics g) {
....
g.drawImage(image,X,Y,this);
....
}
在您的
mouseDragged
方法中执行以下操作:

 public void mouseDragged(MouseEvent e) {
          X = e.getX();
          Y = e.getY();
         repaint();
 }

希望这能有所帮助。

“我无法制作非常简单的版本”。这是什么意思?并不是你做的每件事都很简单。如果您找到的唯一代码很复杂,那么任务可能很复杂。如果您发现了有效的代码,那么使用它有什么错?否则,请发布您发现的代码,并解释为什么它很复杂,这样我们就不会重复自己的内容,并可能提供更好的替代方案。我们无法猜测您对已有代码的复杂程度。