Hey, ich war jetzt länger nicht mehr aktiv und versuche mich wieder ein wenig in Java einzudenken. Ich habe etwas kleines programmiert und meine Frage ist nun was ich an dem folgenden Code optimieren kann.
Falls ihr Vorschläge habt immer her damit, gerne auch mit einer Erklärung dazu, möchte das schließlich auch nachvollziehen können.
Freundliche Grüße
Soloeco
Java:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Class extends JFrame {
//Variablen einfügen
int stunden;
int minuten;
int sekunden;
public static void main(String[] args) {
//Erzeugen des Fensters beim Ausfürhen der Klasse
new Class();
}
public Class() {
//Fenster definieren
super("Stoppuhr");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setExtendedState(JFrame.MAXIMIZED_BOTH);
setLayout(null);
setVisible(true);
stoppuhr();
}
public void stoppuhr() {
//Definieren der Variablen
sekunden = 0;
minuten = 0;
stunden = 0;
//Darstellen der Stoppuhr auf dem Fenster
final JLabel labelStoppuhr = new JLabel("Zeit: " + stunden + ":" + minuten + ":" + sekunden);
labelStoppuhr.setBounds(250,25,200,20); //x, y, breite, höhe
labelStoppuhr.setForeground(Color.BLUE);
add(labelStoppuhr);
//Erzeugen des buttons für den Start der Stoppuhr
final JButton start = new JButton("Starte die Stoppuhr hier");
start.setSize(180,30);
start.setVisible(true);
start.setLocation(20,20);
start.setEnabled(true);
add(start);
//Hinzufügen der Aktion beim Klicken des buttons
start.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
start.setEnabled(false);
new Timer(1000, new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//mathematische Zeit
sekunden = sekunden + 1;
if(sekunden == 60)
minuten = minuten + 1;
if(sekunden == 60)
sekunden = 0;
if(minuten == 60)
stunden = stunden + 1;
if(minuten == 60)
minuten = 0;
//Label der Zeit Anzeige aktualiesieren
labelStoppuhr.setText("Zeit: " + stunden + ":" + minuten + ":" + sekunden);
}
}).start();
}
});
}
}
Falls ihr Vorschläge habt immer her damit, gerne auch mit einer Erklärung dazu, möchte das schließlich auch nachvollziehen können.
Freundliche Grüße
Soloeco