javaneuling
Grünschnabel
Hallo
Ich habe folgenden Java-Code erstellt:
drawFixPunktYN=true;
drawCueYN=false;
drawObjectYN=false;
repaint(5000);
drawFixPunktYN=false;
drawCueYN=true;
drawObjectYN=false;
repaint(5000);
drawFixPunktYN=false;
drawCueYN=false;
drawObjectYN=true;
repaint();
Dieser Code soll Folgendes erzeugen: Zuerst soll ein Fixpunkt gezeichnet werden, dann soll das Programm 5 sec warten, dann soll ein Pfeil (Cue) gezeichet werden, dann soll das Programm wiederum 5 sec warten und schliesslich soll ein Objekt (ein Rechteck) gezeichnet werden.
Das funktioniert natürlich nicht. Das Programm zeichnet weder den Fixpunkt noch den Pfeil, sondern unmittelbar das Objekt.
Nun habe ich folgendes probiert:
final javax.swing.Timer timer = new javax.swing.Timer(5000,new ActionListener(){
public void actionPerformed(ActionEvent e) {
drawFixPunktYN=false;
drawCueYN=false;
drawObjectYN=true;
repaint();
}
});
SwingUtilities.invokeLater(new Runnable() {
public void run() {
drawFixPunktYN=false;
drawCueYN=true;
drawObjectYN=false;
repaint();
timer.start();
}
});
Das ist zwar nur eine Zwischenlösung, weil das Zeichnen des Fixpunktes gar nicht verlangt wird. Nun zeichnet das Programm den Pfeil, wartet unterschiedlich lange Zeit und zeichnet dann das Objekt.
Meine Fragen:
- Warum dauert es unterschiedlich lang zwischen dem Zeichnen des Pfeils und dem Zeichnen des Objekts? Es ist wichtig, dass die 5 Sekunden stets exakt eingehalten werden.
- Wie kann ich nun noch das Zeichnen des Fixpunktes vor dem Zeichnen des Pfeils und des Objekts hinzufügen?
Vielen Dank für eure Hilfe
Java-Neuling
Ich habe folgenden Java-Code erstellt:
drawFixPunktYN=true;
drawCueYN=false;
drawObjectYN=false;
repaint(5000);
drawFixPunktYN=false;
drawCueYN=true;
drawObjectYN=false;
repaint(5000);
drawFixPunktYN=false;
drawCueYN=false;
drawObjectYN=true;
repaint();
Dieser Code soll Folgendes erzeugen: Zuerst soll ein Fixpunkt gezeichnet werden, dann soll das Programm 5 sec warten, dann soll ein Pfeil (Cue) gezeichet werden, dann soll das Programm wiederum 5 sec warten und schliesslich soll ein Objekt (ein Rechteck) gezeichnet werden.
Das funktioniert natürlich nicht. Das Programm zeichnet weder den Fixpunkt noch den Pfeil, sondern unmittelbar das Objekt.
Nun habe ich folgendes probiert:
final javax.swing.Timer timer = new javax.swing.Timer(5000,new ActionListener(){
public void actionPerformed(ActionEvent e) {
drawFixPunktYN=false;
drawCueYN=false;
drawObjectYN=true;
repaint();
}
});
SwingUtilities.invokeLater(new Runnable() {
public void run() {
drawFixPunktYN=false;
drawCueYN=true;
drawObjectYN=false;
repaint();
timer.start();
}
});
Das ist zwar nur eine Zwischenlösung, weil das Zeichnen des Fixpunktes gar nicht verlangt wird. Nun zeichnet das Programm den Pfeil, wartet unterschiedlich lange Zeit und zeichnet dann das Objekt.
Meine Fragen:
- Warum dauert es unterschiedlich lang zwischen dem Zeichnen des Pfeils und dem Zeichnen des Objekts? Es ist wichtig, dass die 5 Sekunden stets exakt eingehalten werden.
- Wie kann ich nun noch das Zeichnen des Fixpunktes vor dem Zeichnen des Pfeils und des Objekts hinzufügen?
Vielen Dank für eure Hilfe
Java-Neuling