con questo codice i jbutton non funzionano..
questo è il cod:
come mai???codice:import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.image.ImageObserver; import javax.swing.*; public class GifAnimata extends JFrame { ImageIcon img; Image animation; Immagine currentAnimation = new Immagine(); JFrame frame = new JFrame("prova Animazione"); JButton buttonPause = new JButton("Pause"); JButton buttonPlay = new JButton("Play"); JButton buttonImage1 = new JButton("Image1"); JButton buttonImage2 = new JButton("Image2"); Timer timer; JScrollPane scroll = new JScrollPane(); public GifAnimata() { prova(); } public void prova() { JPanel p = new JPanel(); p.add(buttonPlay); buttonPlay.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { timer.start(); } }); p.add(buttonPause); buttonPause.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { timer.stop(); } }); p.add(buttonImage1); buttonImage1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { img = new ImageIcon("c://db/testi/moda.jpg"); animation = img.getImage(); prepareImage(animation,this); currentAnimation.setX(10); currentAnimation.setY(+250); timer = new Timer(50, new ActionListener() { public void actionPerformed(ActionEvent ae) { currentAnimation.setY(currentAnimation.getY() - 1); scroll.repaint(); } }); } private void prepareImage(Image animation, ActionListener actionListener) { // TODO Auto-generated method stub currentAnimation.setY(currentAnimation.getY() - 1); panel.repaint(); } }); p.add(buttonImage2); buttonImage2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { img = new ImageIcon("c://db/testi/grignani.jpg"); animation = img.getImage(); prepareImage(animation, this); currentAnimation.setX(10); currentAnimation.setY(+250); timer = new Timer(200, new ActionListener() { public void actionPerformed(ActionEvent ae) { currentAnimation.setY(currentAnimation.getY() - 1); scroll.repaint(); } }); } private void prepareImage(Image animation, ActionListener actionListener) { // TODO Auto-generated method stub currentAnimation.setY(currentAnimation.getY() - 1); panel.repaint(); } }); frame.setTitle("Gif Animata"); frame.setSize(1100, 720); panel.add(new JLabel(img)); JScrollPane scrollPane = new JScrollPane(panel); frame.getContentPane().add(scrollPane, BorderLayout.CENTER); frame.add(p, BorderLayout.NORTH); frame.setLocationRelativeTo( null ); frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); frame.setVisible( true ); } JPanel panel = new JPanel() { public void paint(Graphics g) { super.paint(g); Graphics2D g2d = (Graphics2D) g; g.setColor(Color.WHITE); g.fillRect(0, 0, 1100, 720); g2d.drawImage(animation, currentAnimation.getX(), currentAnimation.getY(), this); Toolkit.getDefaultToolkit().sync(); g.dispose(); } }; public static void main(String[] args) { GifAnimata ga = new GifAnimata(); } } class Immagine { /* * Simple Object class to store the ball's co-ordinates. */ private int x; private int y; Immagine() { ; } public int getX() { return x; } public void setX(int x2) { x = x2; } public int getY() { return y; } public void setY(int y2) { y = y2; } }

Rispondi quotando