Dit is de eerste keer voor mij dat ik in de dev schuur post, dus ik hoop dat ik hier goed zit.
Klein verhaaltje vooraf, voor school moet ik een java aplicatie schrijven die realtime gegevens van een PLC plukt en deze daarna verwerkt in een visualisatie.
Ik heb dus een aantal afbeeldingen die ik versneld achterelkaar wil laten zien (ik heb gif afbeeldingen die bewegen gemaakt alleen ik weet niet hoe ik die in java kan laten zien (JFrame bijvoorbeeld))
Daarom ben ik eerst iets anders gaan proberen.
Een stukje code uit een boek om te testen. Ik heb deze helemaal exact overgenomen alleen ik dezelfde foutmelding krijgen nadat ik het zaakje heb gecompiled.
Deze namelijk:

De code is:
Mijn vraag is dus, wat is hier fout aan? Is er een makkelijkere manier om (al bewegende afbeeldingen in te laden in zo'n zelfde soort frame?
Klein verhaaltje vooraf, voor school moet ik een java aplicatie schrijven die realtime gegevens van een PLC plukt en deze daarna verwerkt in een visualisatie.
Ik heb dus een aantal afbeeldingen die ik versneld achterelkaar wil laten zien (ik heb gif afbeeldingen die bewegen gemaakt alleen ik weet niet hoe ik die in java kan laten zien (JFrame bijvoorbeeld))
Daarom ben ik eerst iets anders gaan proberen.
Een stukje code uit een boek om te testen. Ik heb deze helemaal exact overgenomen alleen ik dezelfde foutmelding krijgen nadat ik het zaakje heb gecompiled.
Deze namelijk:

De code is:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
| import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.*; public class gifjewasmachine extends JFrame { public static void main(String args[]) { JFrame frame = new gifjewasmachine(); frame.setSize(400,340); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setTitle("poging"); frame.setContentPane(new gifjeswasmachine()); frame.setVisible(true); } } class gifjeswasmachine extends JPanel { private javax.swing.Timer timer; private ArrayList<ImageIcon> lijst; private final int AANTAL = 7; private int index,volgende; private int delay; private JButton startknop; public gifjeswasmachine() { lijst = new ArrayList<ImageIcon>(); for(int i =0; i<AANTAL; i++) { String bestandsnaam = String.format("IMG%05d.gif,i"); ImageIcon plaatje = new ImageIcon(bestandsnaam); lijst.add(plaatje); } index = 0; volgende = 1; delay = 210; timer = new javax.swing.Timer(delay, new TimerHandler()); startknop = new JButton("Start"); startknop.addActionListener(new StartHandler()); add(startknop); } public void paintComponent(Graphics g) { super.paintComponent(g); setBackground(Color.BLACK); ImageIcon plaatje = lijst.get(index); plaatje.paintIcon(this,g,100,100); } class StartHandler implements ActionListener { public void actionPerformed(ActionEvent e) { timer.start(); } } class TimerHandler implements ActionListener { public void actionPerformed(ActionEvent e) { index = index + volgende; if (index<0) index = AANTAL-1; if (index >= AANTAL) index = 0; repaint(); } } } |
Mijn vraag is dus, wat is hier fout aan? Is er een makkelijkere manier om (al bewegende afbeeldingen in te laden in zo'n zelfde soort frame?