Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. import java.awt.*;
  2. import javax.swing.*;
  3. import javax.swing.event.*;
  4. import javax.swing.event.ChangeEvent;
  5. import javax.swing.event.ChangeListener;
  6. import java.awt.event.*;
  7.  
  8. public class Sprite {
  9.  
  10. private static Timer timer = new Timer(1000, new NextPic());
  11. private static int pictureNumber = 0;
  12. private static JLabel nextFrame = new JLabel(new ImageIcon("1.png"));
  13. private static JSlider slider;
  14.  
  15. public static void main (String []args){
  16. JFrame frame = new JFrame("Animation GUI");
  17. JPanel panel = new JPanel();
  18. JLabel label = new JLabel("Drag the slider to either speed up or slow down the animation");
  19. label.setIcon(new ImageIcon ("1.png"));
  20. slider = new JSlider(JSlider.HORIZONTAL, 1, 100, 1);
  21.  
  22. slider.addChangeListener(new SliderChange());
  23. slider.setMinorTickSpacing(1);
  24. slider.setMajorTickSpacing(10);
  25. slider.setPaintLabels(true);
  26. slider.setPaintTicks(true);
  27.  
  28. panel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
  29. panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS));
  30. panel.setPreferredSize(new Dimension(1000, 1000));
  31. panel.add(label);
  32. panel.add(slider);
  33.  
  34. frame.setVisible(true);
  35. frame.setResizable(false);
  36. frame.setSize(500, 150);
  37. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  38. frame.setContentPane(panel);
  39. frame.pack();
  40.  
  41. timer.start();
  42. }
  43.  
  44. private static class SliderChange implements ChangeListener {
  45.  
  46. public void stateChanged(ChangeEvent event) {
  47. JSlider nextPic = (JSlider) event.getSource();
  48. timer.setDelay(1000 / nextPic.getValue());
  49. }
  50. }
  51. private static class NextPic implements ActionListener {
  52.  
  53. public void actionPerformed(ActionEvent event) {
  54. pictureNumber++;
  55. if (pictureNumber == 9) {
  56. pictureNumber = 0;
  57. }
  58. nextFrame.setIcon(new ImageIcon(pictureNumber + ".png"));
  59. }
  60. }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement