ActionListener и анимация предмета - Java

Узнай цену своей работы

Формулировка задачи:

Здравствуйте,проблема заключается в том,что круг не двигается.
package ru.game;
 
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
 
import javax.swing.ImageIcon;
import javax.swing.JPanel;
 
public class panel extends JPanel implements Runnable{
    //Variables
    static int x=100;
    static int y=100;
    static Thread th;
    Image img=new ImageIcon("ball.jpg").getImage();
    ActionEvent e;
    public panel(){
        Thread th=new Thread(this,"1");
        th.start();
        move move=new move();
    }
    
    public void paint(Graphics g){
        g=(Graphics2D) g;
        g.drawImage(img,x,y,null);
    }
 
        public void run() {
            x=x+10;
            repaint();
            
        }
public class move implements ActionListener{
 
    public void actionPerformed(ActionEvent e) {
        run();
        
    }
    
}

}
Создал поток,ActionListener а результата ноль. Буду рад за помощь!

Решение задачи: «ActionListener и анимация предмета»

textual
Листинг программы
package ru.game;
 
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
 
import javax.swing.ImageIcon;
import javax.swing.JPanel;
 
public class panel extends JPanel implements Runnable{
    //Variables
    static int x=100;
    static int y=100;
    static Thread th;
    Image img=new ImageIcon("ball.jpg").getImage();
    ActionEvent e;
    public panel(){
        Thread th=new Thread(this,"1");
        th.start();
    }
    
    public void paint(Graphics g){
        g=(Graphics2D) g;
        g.drawImage(img,x,y,null);
    }
    public void moveObject(){
        for(int i=0;i<100;i++){
        try {
            Thread.sleep(100);
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        x=x+10;
        repaint();
        }
    }
 
        public void run() {
            moveObject();
        }
 
 
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5