|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Nov 2009
Messaggi: 1
|
[java] immagini in movimento, help please!
Ciao,
vorrei chiedervi un aiuto su un semplice programma che sto scrivendo. Voglio creare un JFrame, che contiene un JToolBar, che a sua volta contiene un disegnino realizzato con le classi grafiche di java (Graphics). Vorrei poter 'muovere' il disegnino lungo l'asse x a tempo di timer: ovvero l'utente clicca su un bottone 'start' e da quel momento con un timer ogni tot millisecondi parte un task periodico che aggiorna il disegnino dentro la JToolBar e lo fa spostare. Il mio problema è: come faccio ad accedere al JFrame creato dalla MainClass da dentro la classe Task? (vedere sotto). Posso farlo? O c'è un altro modo? Grazie per l'aiuto, Diego. classe MAINCLASS: package package1; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.Timer; import java.util.TimerTask; public class MainClass extends JFrame implements ActionListener{ Timer t; JToolBar tool; Disegno d; int posizioneX; public MainClass(){ posizioneX = 1; d = new Disegno(posizioneX); t = new Timer(); setSize(1000,200); tool = new JToolBar(); JButton startButton = new JButton("START"); startButton.addActionListener(this); startButton.setActionCommand("via"); tool.add(startButton); tool.add(d); add(tool); } public void actionPerformed(ActionEvent e) { if(e.getActionCommand().equals("via")){ System.out.println("startato!"); t.schedule(new Task(posizioneX++),0,3000); } } public static void main(String[] args){ (new MainClass()).setVisible(true); } } classe TASK: package package1; import java.util.TimerTask; public class Task extends TimerTask{ int param; public Task(int param){ this.param = param; } public void run() { //QUI VORREI FARE // //tool.remove( //tool.add(new Disegno(par)); //repaint(); //setVisible(true); // //MA COME FACCIO AD ACCEDERE A tool DA QUESTA CLASSE? } } |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:01.



















