Eae pessoal, então eu naum consigo fazer uma imagem se mover, quer dizer, eu queria pelo menos mudar sua posição no Container.
Qdo eu utilizo o método setVerticalAligment(), dá erro, neste código q vai abaixo:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Interface extends JFrame {
private Container container;//obtém o painel de conteúdo
private JButton button1,button2;
private JPanel panel;
private JLabel label;
private int x,y;
private Icon bug1,bug2;
public Interface() {
super("Animação");
container = getContentPane();//obtém o painel de conteúdo e configura seu leiaute
container.setLayout(new BorderLayout());
panel = new JPanel();
panel.setLayout(new GridLayout(1,2));//cria um leiaute c/ 1 linha e 2 colunas
bug1 = new ImageIcon("cheers.gif");//adicionar um gif ao botão
button1 = new JButton("andar",bug1);//botão como JLabels suportam Icons(gifs)
panel.add(button1);
button2= new JButton("parar");
panel.add(button2);
container.add(panel,BorderLayout.SOUTH);
label = new JLabel();
bug2 = new ImageIcon("cameron[1].gif");
label.setIcon(bug2);
label.setEnabled(false);
x=label.getHorizontalAlignment();//devolve a posição x da label,coordenada
y=label.getVerticalAlignment();
container.add(label,BorderLayout.CENTER);
// cria uma instância da classe interna ButtonHandler
//para uso no tratamento de eventos de botão
ButtonHandler handler = new ButtonHandler();
button1.addActionListener(handler);
button2.addActionListener(handler);
setSize(250,300);
setVisible(true);
}
public static void main(String[] args) {
Interface o = new Interface();
o.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private class ButtonHandler implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
//JOptionPane.showMessageDialog(null,"You are pressed:"+event.getActionCommand());
//event.getActionCommand retorna um String, o String do botão...
if(("andar").equals(event.getActionCommand()))//se ele der verdade, equals, comparação de Strings retorna true or false
{
label.setDisabledIcon(bug2);
label.setVerticalAlignment(x+10);
System.out.print(x);
}
}
}
}
como eu faço p/ mover este gif, tem algum método.