谁可以帮我看看怎么才能实现图片的移动啊 谢谢 我是菜鸟 初学者
package interface1;import java.awt.Canvas;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class interface1 extends JFrame{
public interface1()
{
super("贪吃蛇");
//JLabel imgView = new JLabel(new ImageIcon("D:\\12.gif"));
// add(imgView);
setSize(800, 600);
points1 x=new points1();
new Thread(x).start();
add(x);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);}
public static void main(String[] args )
{
new interface1();
}
}
class points1 extends JPanel implements KeyListener,Runnable
{
static int x=0;
static int y=0;
public points1()
{
//addKeyListener(new KeyListener(){
/* @Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
if(e.getKeyCode()==KeyEvent.VK_A)
{
x=x-5;
}
else if(e.getKeyCode()==KeyEvent.VK_D)
{
x=x+5;
}else if(e.getKeyCode()==KeyEvent.VK_S)
{y=y-5;
}else if(e.getKeyCode()==KeyEvent.VK_W)
{
y=y+5;
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
});
*/
}
public void paint(Graphics g)
{
g.setColor(Color.black);
g.fill3DRect(x+100, y+100, 30,30, true);
}
@Override
public void run() {
while(true)
{
this.repaint();
}
}
@Override
public void keyPressed(KeyEvent e) {
System.out.print("1");
if(e.getKeyCode()==KeyEvent.VK_A)
{
x=x-5;
}
else if(e.getKeyCode()==KeyEvent.VK_D)
{
x=x+5;
}else if(e.getKeyCode()==KeyEvent.VK_S)
{y=y-5;
}else if(e.getKeyCode()==KeyEvent.VK_W)
{
y=y+5;
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
}
--------------------编程问答-------------------- 建议利用javax.swing.Timer来实现,估计你代码需要重新调整 --------------------编程问答--------------------
赞同
补充:Java , Java SE