读书人

简略小实例求解

发布时间: 2013-01-06 15:44:48 作者: rapoo

简单小实例求解
希望各位大侠帮忙写一下下面这个鼠标事件的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);


this.setTitle("我是跟屁虫");
this.setSize(400, 300);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true);
}

public static void main(String[] args) {
new test1();
}
}




[解决办法]
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);
jPanel.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseMoved(MouseEvent e) { //鼠标移动

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

jButton.setBounds(x, y, 100, 30);}
});
jButton.addMouseMotionListener(new MouseMotionAdapter()
{
public void mouseDragged(MouseEvent e) { //鼠标拖动
int x = e.getX();
int y = e.getY();
jButton.setText(x + " , " + y);
jButton.setBounds(x, y, 100, 30);
}
});
jButton.addMouseListener(new MouseAdapter()
{
public void mouseReleased(MouseEvent e){ //放开鼠标
jButton.setText("别想甩掉我");
}
});
jPanel.setLayout(null);
jPanel.add(jButton);
this.add(jPanel);


this.setTitle("我是跟屁虫");
this.setSize(400, 300);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true);
}

public static void main(String[] args) {
new test1();
}
}


ls几位没有添加鼠标拖动,我改了一下,版权是2楼

读书人网 >J2SE开发

热点推荐