很基础的……只是如何实现方块能在界面中移动……import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;public class Practice extends JFrame{
public Practice(){
setSize(500,500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
Panel panel=new Panel();
getContentPane().add(panel);
setTitle("物体移动");
}
public static void main(String[] args){
new Practice();
}
}class Panel extends JPanel{
int x=100,y=100;
public Panel(){
this.addKeyListener(new Mylistener());
}
public void paintComponent(Graphics g){
g.fillRect(x, y, 10, 10);
repaint();
}
class Mylistener implements KeyListener{ @Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
} @Override
public void keyPressed(KeyEvent e) {
int i=e.getKeyCode();
switch (i) {
case KeyEvent.VK_UP:
y-=5;
break;
case KeyEvent.VK_DOWN:
y+=5;
break;
case KeyEvent.VK_LEFT:
x-=5;
break;
case KeyEvent.VK_RIGHT:
x+=5;
break;
default:
break;
}
} @Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
}
}
import java.awt.event.*;
import java.util.*;
import javax.swing.*;public class Practice extends JFrame{
public Practice(){
setSize(500,500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
Panel panel=new Panel();
getContentPane().add(panel);
setTitle("物体移动");
}
public static void main(String[] args){
new Practice();
}
}class Panel extends JPanel{
int x=100,y=100;
public Panel(){
this.addKeyListener(new Mylistener());
}
public void paintComponent(Graphics g){
g.fillRect(x, y, 10, 10);
repaint();
}
class Mylistener implements KeyListener{ @Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
} @Override
public void keyPressed(KeyEvent e) {
int i=e.getKeyCode();
switch (i) {
case KeyEvent.VK_UP:
y-=5;
break;
case KeyEvent.VK_DOWN:
y+=5;
break;
case KeyEvent.VK_LEFT:
x-=5;
break;
case KeyEvent.VK_RIGHT:
x+=5;
break;
default:
break;
}
} @Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货