VN
Vasiliy Nikolaevich

Вопрос к тем, кто разбирается в Java

Вроде бы все верно написал, но персонаж не хочет двигаться. В чём проблема? Вот код:
package lesson7;
import javax.swing.*;
import java.awt.*;
import javax.imageio.*;
import java.io.*;
import java.awt.event.*;
public class Prog {

public static void main(String[] args) {
myFrame okno = new myFrame();

}

}
class myFrame extends JFrame
{
public myFrame()
{
myPanel np = new myPanel();
Container cont = getContentPane();
cont.add(np);
setBounds(10, 10, 600, 384);
setVisible(true);
setTitle("Game");
}
}
class myPanel extends JPanel
{
private int a = 50, b = 50, x=0, y=295;
private int napr=2;
private Image img, fon;
private class myKey implements KeyListener
{
public void keyPressed(KeyEvent e)
{
int key = e.getKeyCode();
System.out.println(key);
if(key==37) napr = 0;
if(key==38) napr = 1;
if(key==39) napr = 2;
if(key==40) napr = 3;
if(key==10) napr = 4;
}
public void keyReleased(KeyEvent e) {}
public void keyTyped(KeyEvent e) {}
}
public myPanel()
{
addKeyListener(new myKey());
setFocusable(true);
Timer nt = new Timer(10, new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
if (napr==0)x--;
if (napr==1)y--;
if (napr==2)x++;
if (napr==3)y++;
}
});
nt.start();
try
{
fon = ImageIO.read(new File("c:\\f1.jpg"));
img = ImageIO.read(new File("c:\\p1.png"));
}
catch(IOException exp) {}
}
public void paintComponent(Graphics gr)
{
gr.drawImage(fon, 0, 0, null);
gr.setColor(Color.BLACK);
gr.fillRect(150, 250, 100, 100);
gr.drawImage(img, x, y, a, b, null);
}
}

СХ
Серега Храмов

После строчки:

if(key==10) napr = 4;

Нужно добавить строку:

repaint(); // перерисовать

АБ
Анютик Балакирева

для постинга кода есть pastebin.com,
А в java я не разбираюсь

Похожие вопросы
Java. Написать программу
А что из себя представляет Null в java?
Java, Создание программы
JAVA, что делает этот метод?
Как сделать Массив Java
Вопрос насчёт Java
Что в Java значит @Notnull ?
Запуск потоков в java
Вопрос по осваиванию языка java
JAVA, простой вопрос про Threads.