要求是在我的代码不改变的情况下添加添加的地方要加上注释添加功能如下1坦克不能超过边框也就是不能超过我容器的范围2获取坦克的坐标显示在左上角3我按上的时候对应的图片是向上向下的...
要求是在我的代码不改变的情况下添加 添加的地方要加上注释
添加功能如下
1 坦克不能超过边框 也就是不能超过我容器的范围
2 获取坦克的坐标 显示在左上角
3 我按上的时候 对应的图片是向上 向下的时候就切换成向下的图片 图片没给出来 你只要随便给个路径就行了
import java.awt.Color;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class tkdz extends JFrame implements KeyListener{
private JPanel JContentPane=null;
private JLabel JLab=null;
public tkdz(){
inte();
}
public void inte(){
this.setTitle("坦克大战");
this.setBounds(600,600, 600, 600);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setResizable(false);
this.setContentPane(getJContentPane());
this.addKeyListener(this);
}
public JPanel getJContentPane(){
if(JContentPane==null){
JContentPane=new JPanel();
JContentPane.setBackground(Color.black);
JContentPane.add(getJLab());
}
return JContentPane;
}
public JLabel getJLab(){
if(JLab==null){
ImageIcon img1=new ImageIcon("i:/y.jpg");
JLab=new JLabel(img1);
JLab.setLocation(0, 0);
}
return JLab;
}
public void keyPressed(KeyEvent e) {
key(e);
}
public void keyReleased(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
}
public void key(KeyEvent e) {
switch(e.getKeyCode()) {
case KeyEvent.VK_LEFT :
JLab.setLocation(JLab.getX() - 5, JLab.getY());
if(JLab.getX()-5<=0){
break;
}
break;
case KeyEvent.VK_RIGHT :
JLab.setLocation(JLab.getX() + 5, JLab.getY());
if(JLab.getX()-5<=0){
break;
}
break;
case KeyEvent.VK_UP :
JLab.setLocation(JLab.getX(), JLab.getY() - 5);
if(JLab.getY()-5<=0){
break;
}
break;
case KeyEvent.VK_DOWN :
JLab.setLocation(JLab.getX(), JLab.getY() + 5);
if(JLab.getY()-5<=0){
break;
}
break;
}
}
public static void main(String[] args) {
new tkdz().setVisible(true);
}
}
有会的帮忙写一下啊 我对一些东西还不是很熟悉!!!
我会的话早写出来了
另外这一段不要 if(JLab.getY()-5<=0){
break;
}
是四个都不要 !!!包括getX()的
展开



