Galera eu tenho uma sequencia de imagens e gostaria de fazer uma animação delas … e no final possibilitar que o usuario salve essa animação em sua maquina. Como posso fazer isso?
Obrigado
Paulo
Galera eu tenho uma sequencia de imagens e gostaria de fazer uma animação delas … e no final possibilitar que o usuario salve essa animação em sua maquina. Como posso fazer isso?
Obrigado
Paulo
Pra fazer a animação, vc pode usar o repaint a cada nova figura…
ja, pra salvar a figura final… acho dificil… algo tipo um print screen poderia resolver…
[]'s
Salvar não sei como fazer, mas pra fazer a animação olhe o código abaixo, tinha uma bola se movendo junto, mas tirei para o codigo ficar menor, por isso dos nomes terem “Bola” também…
7 figuras fazendo a animação…
[code]import java.awt.;
import java.awt.event.;
//Java extension packages
import javax.swing.*;
public class PainelFigura extends JPanel implements ActionListener {
protected ImageIcon imagens[];
protected int totalImagens =6 ,imagemAtual = 0;
protected String imagem = "Frame_";
protected Timer timer;
public PainelFigura(){
inicializar();
this.start();
}
protected void inicializar(){
imagens = new ImageIcon[ totalImagens ];
for ( int count = 0; count < imagens.length; ++count )
imagens[ count ] = new ImageIcon( getClass().getResource(
"images/" + imagem + count + ".gif" ) );
}
public void paintComponent( Graphics g ){
super.paintComponent( g );
imagens[ imagemAtual ].paintIcon( this, g, 0, 0 );
imagemAtual = ( imagemAtual + 1 ) % totalImagens;
}
public void actionPerformed( ActionEvent actionEvent ) {
repaint();
}
public void start() {
if ( timer == null ) {
imagemAtual = 0;
timer = new Timer( 50, this );
timer.start();
}
else
if ( ! timer.isRunning() )
timer.restart();
}
public Dimension getPreferredSize()
{
return new Dimension( 200, 200 );
}
}[/code]
[code]import javax.swing.;
import java.awt.;
class BolaFigura extends JFrame {
PainelFigura painel2;
public BolaFigura() {
super();
painel2 = new PainelFigura();
JPanel contentPane = new JPanel();
JPanel contentPane1 = new JPanel();
contentPane1.add(painel2, BorderLayout.CENTER);
contentPane.setLayout(new BorderLayout());
contentPane.setPreferredSize(new Dimension(510, 530));
contentPane.add(contentPane1, BorderLayout.NORTH);
setContentPane(contentPane);
}
public static void main(String[] args) {
BolaFigura bolaFigura = new BolaFigura();
bolaFigura.setSize(250,250);
bolaFigura.setVisible(true);
bolaFigura.setLocation(150,0);
}
}[/code]