mercredi 22 avril 2015

Timer für Bildfolge in einem jLabel

Hallo ich tüftle momentan an einen Programm, derzeit habe ich Oben Rechts ein jLabel (jLabel2) in dem ich gerne alle paar Sekunden ein anderes Bild einblenden möchte, allerdings weiß ich nicht so ganz wie ich das anstellen kann und im Internet fand ich auch keinen Lösungsansatz.

Ich vermute einen Start Button für den Timer erstellen zu müssen, aber das weiß ich nicht.

Java Code:

  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import javax.swing.*;
  4. import javax.swing.event.*;
  5. import java.util.Random;
  6.  
  7.  
  8.  
  9. /**
  10.   *
  11.   * Beschreibung
  12.   *
  13.   * @version 1.0 vom 21.04.2015
  14.   * @author durchstarter
  15.   */
  16.  
  17.  
  18.  
  19. public class JadSimulator extends JFrame {
  20. // Anfang Attribute
  21. private JLabel jLabel1 = new JLabel(new ImageIcon("TzTok-Jad_Animations.gif"));
  22. private JLabel jLabel2 = new JLabel();
  23. private Random hp = new Random();
  24. private JToggleButton jToggleButton1 = new JToggleButton(new ImageIcon("mageoff.png"));
  25. private JToggleButton jToggleButton2 = new JToggleButton(new ImageIcon("rangeoff.png"));
  26. // Ende Attribute
  27.  
  28. public JadSimulator(String title) {
  29.  
  30. // Frame-Initialisierung
  31. super(title);
  32. setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
  33. int frameWidth = 285;
  34. int frameHeight = 300;
  35. setSize(frameWidth, frameHeight);
  36. Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
  37. int x = (d.width - getSize().width) / 2;
  38. int y = (d.height - getSize().height) / 2;
  39. setLocation(x, y);
  40. setResizable(false);
  41. Container cp = getContentPane();
  42. cp.setLayout(null);
  43.  
  44. // Anfang Komponenten
  45. jLabel1.setBounds(0, 0, 115, 97);
  46. jLabel1.setText("");
  47. cp.add(jLabel1);
  48. jLabel2.setBounds(128, 8, 126, 100);
  49. jLabel2.setText("");
  50. cp.add(jLabel2);
  51. jToggleButton1.setBounds(48, 192, 45, 45);
  52. jToggleButton1.setText("");
  53. jToggleButton1.setMargin(new Insets(2, 2, 2, 2));
  54. jToggleButton1.addActionListener(new ActionListener() {
  55. public void actionPerformed(ActionEvent evt) {
  56. jToggleButton1_ActionPerformed(evt);
  57. }
  58. });
  59. cp.add(jToggleButton1);
  60. jToggleButton2.setBounds(120, 192, 45, 45);
  61. jToggleButton2.setText("");
  62. jToggleButton2.setMargin(new Insets(2, 2, 2, 2));
  63. jToggleButton2.addActionListener(new ActionListener() {
  64. public void actionPerformed(ActionEvent evt) {
  65. jToggleButton2_ActionPerformed(evt);
  66. }
  67. });
  68. cp.add(jToggleButton2);
  69. // Ende Komponenten
  70. setVisible(true);
  71. }
  72.  
  73. public void jToggleButton1_ActionPerformed(ActionEvent evt) {
  74. jToggleButton2.setSelected(false);
  75. boolean x=jToggleButton1.isSelected();
  76.  
  77. Icon m=new ImageIcon("mageon.png");
  78. Icon mo=new ImageIcon("mageoff.png");
  79. Icon r=new ImageIcon("rangeoff.png");
  80.  
  81. if (x==true) {
  82. jToggleButton1.setIcon(m);
  83. jToggleButton2.setIcon(r);
  84. } // end of if
  85. else {
  86.  
  87. jToggleButton1.setIcon(mo);
  88. } // end of if-else
  89.  
  90. } // end of jToggleButton1_ActionPerformed
  91.  
  92. public void jToggleButton2_ActionPerformed(ActionEvent evt) {
  93. jToggleButton1.setSelected(false);
  94. boolean x=jToggleButton2.isSelected();
  95.  
  96. Icon m=new ImageIcon("mageoff.png");
  97. Icon r=new ImageIcon("rangeon.png");
  98. Icon ro=new ImageIcon("rangeoff.png");
  99.  
  100. if (x==true) {
  101. jToggleButton1.setIcon(m);
  102. jToggleButton2.setIcon(r);
  103. } // end of if
  104. else {
  105. jToggleButton2.setIcon(ro);
  106. }
  107. } // end of jToggleButton2_ActionPerformed
  108.  
  109. // Ende Methoden
  110.  
  111. public static void main(String[] args) {
  112. new JadSimulator("JadSimulator");
  113. } // end of main
  114.  
  115. } // end of class JadSimulator


Timer für Bildfolge in einem jLabel

0 commentaires:

Enregistrer un commentaire