当前位置: 代码迷 >> J2SE >> 简略小实例求解
  详细解决方案

简略小实例求解

热度:80   发布时间:2016-04-23 23:09:14.0
简单小实例求解
希望各位大侠帮忙写一下下面这个鼠标事件的java代码
主要是mouseMoved和mouseDragged这两个方法  ,非常感谢~~~~~
完成界面并实现功能:
(1)当鼠标在窗口上移动时,按钮跟着一起移动
(2)当按下鼠标在窗口上移动时(即拖拉),在按钮上显示鼠标的位置





       

------解决方案--------------------
package w.j.AWT;

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Wannabes extends JFrame {

JPanel jPanel;
JButton jButton;

public Wannabes() {

jPanel = new JPanel();
jButton = new JButton("别想甩掉我");
this.jButton.setBounds(50, 70, 100, 30);
jButton.addMouseListener(new MouseAdapter() {

public void mouseClicked(MouseEvent e) {

int x = e.getX();
int y = e.getY();

jButton.setText(x + " : " + y);
}
});

jPanel.setLayout(null);
jPanel.add(jButton);
jPanel.addMouseMotionListener(new MouseMotionAdapter() {

public void mouseDragged(MouseEvent e) {

int x = e.getX();
int y = e.getY();

jButton.setBounds(x, y, 100, 30);
}
});

this.add(jPanel);
this.setTitle("我是跟屁虫。   哥们,你看这么写的行么?");
this.setSize(400, 300);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true);
}

public static void main(String[] args) {

Wannabes wann = new Wannabes();
}
}
------解决方案--------------------
引用:
引用:package w.j.AWT;

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;

import javax.swing.JButton……

兄弟,监听器搞错了,应该是mouseMoved,不是mouseDragged
我改了下,还行,版权是二楼的

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class test1 extends JFrame {

JPanel jPanel;
JButton jButton;
public test1() {

jPanel = new JPanel();
jButton = new JButton("别想甩掉我");
this.jButton.setBounds(50, 70, 100, 30);
jButton.addMouseListener(new MouseAdapter() 
{
public void mouseClicked(MouseEvent e) {
int x = e.getX();
int y = e.getY();
jButton.setText(x + " : " + y);
}
});
jPanel.setLayout(null);
jPanel.add(jButton);
jPanel.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseMoved(MouseEvent e) {

int x = e.getX();
int y = e.getY();

jButton.setBounds(x, y, 100, 30);}
});
this.add(jPanel);
  相关解决方案