Ich fange jetzt grade an Java zu lernen, beschaeftige mich jetzt grade mit GUI usw..
und ich bin auf folgendes Problem gestossen.
Ich wollte eine Stoppuhr programmieren.
Ich hab mit Netbeans(mit dem GUI-Builder) eine GUI erstellt mit Buttons, einem Textfeld usw...
Jetzt wollte ich auf Knopfdruck den Text im Textfeld aendern.
Das wenn ich den Stopbutton druecke das Textfeld sich zu der gestoppten Zeit aendert.
Nun wollte ich gerne das das Label sich Zeitgleich (der zumindest alle 100 Milisekunden aendern naemlich zur gerade laufender Zeit).
Ich denke, dass es einen loop geben muesste, da sich das Textfeld ja immer "erneuern" soll.
Ich habe das einmal mit einem while loop probiert und dann nochmal mit einem do...while loop.
Die Variable Zahl habe ich als 2 definiert und die Zeiten sind alle vom Typ double.
So sieht das jetzt im Moment aus:
Mein Problem dabei ist jetzt, dass wenn ich den Startbutton druecke (auf der GUI) er gedrueckt bleibt als ob das Programm sich aufgehaengt hat.
Ich kann den Stopbutton leider auch nicht druecken.
Es liegt nicht am Button.
Der hat davor ja FUNKTIONIERT als das ganze so war:
Koennte es vielleicht daran liegen, das man loops nicht der actionEvents von GUI nehmen darf/kann oder
Ich hoffe ihr koennt mir helfen
Vielen danke.
Devil0s
PS: Ich habe das komplette Programm im Anhang wenn ihr noch mehr Infos wollt/braucht.
und ich bin auf folgendes Problem gestossen.
Ich wollte eine Stoppuhr programmieren.
Ich hab mit Netbeans(mit dem GUI-Builder) eine GUI erstellt mit Buttons, einem Textfeld usw...
Jetzt wollte ich auf Knopfdruck den Text im Textfeld aendern.
Das wenn ich den Stopbutton druecke das Textfeld sich zu der gestoppten Zeit aendert.
Nun wollte ich gerne das das Label sich Zeitgleich (der zumindest alle 100 Milisekunden aendern naemlich zur gerade laufender Zeit).
Ich denke, dass es einen loop geben muesste, da sich das Textfeld ja immer "erneuern" soll.
Ich habe das einmal mit einem while loop probiert und dann nochmal mit einem do...while loop.
Die Variable Zahl habe ich als 2 definiert und die Zeiten sind alle vom Typ double.
So sieht das jetzt im Moment aus:
Java:
private void startButtonActionPerformed(java.awt.event.ActionEvent evt) {
zeit1 = System.currentTimeMillis();
do {
zeit2 = System.currentTimeMillis();
zeit3 = zeit2 - zeit1;
zeitEnde = zeit3 / 1000;
textfeld.setText(" " + zeitEnde);
} while (zahl1 != 1);
textfeld.setText(" " + zeitEnde);
}
private void stopButtonActionPerformed(java.awt.event.ActionEvent evt) {
int zahl1 = 1;
textfeld.setText(" " + zeitEnde);
Mein Problem dabei ist jetzt, dass wenn ich den Startbutton druecke (auf der GUI) er gedrueckt bleibt als ob das Programm sich aufgehaengt hat.
Ich kann den Stopbutton leider auch nicht druecken.
Es liegt nicht am Button.
Der hat davor ja FUNKTIONIERT als das ganze so war:
Java:
private void startButtonActionPerformed(java.awt.event.ActionEvent evt) {
zeit1 = System.currentTimeMillis();
}
private void stopButtonActionPerformed(java.awt.event.ActionEvent evt) {
zeit2 = System.currentTimeMillis();
zeit3 = zeit2 - zeit1;
zeitEnde = zeit3 / 1000;
textfeld.setText(" " + zeitEnde);
Koennte es vielleicht daran liegen, das man loops nicht der actionEvents von GUI nehmen darf/kann oder
Ich hoffe ihr koennt mir helfen
Vielen danke.
Devil0s
PS: Ich habe das komplette Programm im Anhang wenn ihr noch mehr Infos wollt/braucht.
Anhänge
Zuletzt bearbeitet von einem Moderator: