小方塊移動

package result;
import java.awt.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.*;
//邏輯層
class Mycanvas extends Canvas{
int x = 10;
int y = 10;
Mycanvas(){
setSize(500,500);
setBackground(Color.blue);
}
public void setDate(int x,int y)
{
this.x = x;
this.y = y;
}
public void paint(Graphics g) {
g.setColor(Color.white);
g.fillRect(x, y, 10, 10);
}
}
public class F8 extends JFrame{
private Mycanvas mycanvas = new Mycanvas();
F8(){
setSize(1000,1000);
setTitle("li");
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
add(mycanvas, "North");
mycanvas.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
if(e.getKeyCode() == KeyEvent.VK_UP) {
mycanvas.setDate(mycanvas.x, mycanvas.y-10);
mycanvas.repaint();
}
else if (e.getKeyCode() == KeyEvent.VK_DOWN) {
mycanvas.setDate(mycanvas.x, mycanvas.y+10);
mycanvas.repaint();
}
else if (e.getKeyCode() == KeyEvent.VK_LEFT) {
mycanvas.setDate(mycanvas.x-10, mycanvas.y);
mycanvas.repaint();
}
else if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
mycanvas.setDate(mycanvas.x+10, mycanvas.y);
mycanvas.repaint();
}

}
});
mycanvas.addMouseListener(new MouseListener() {

@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub

}

@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub

}

@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub

}

@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub

}

@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
JOptionPane.showMessageDialog(null, "hah");
}
});
validate();
}
public static void main(String[] args) {
new F8();
}
}

原文地址:https://www.cnblogs.com/nanfengnan/p/13696956.html