Countdown 5min bis 0sek Java

stify

Mitglied
Hallo,
mir wurde die Aufgabe erteilt eine Programm mit Java zu schreiben, wo ein Fenster angezeigt wird indem "Bitte das Programm schliessen" steht und darunter ein Countdown von 5min auf 0 läuft. Leider bin ich nicht gerade ein geübter java programmierer. Hat wer brauchbare schnipsel oder sogar ein fertiggestelltes/ähnliches Programm?

Danke für die Hilfe !

LG
 

stify

Mitglied
Die Seite habe ich auch schon entdeckt. Leider sein teile des Java Codes rot unterstrichen und somit nicht brauchbar für mich.
 
S

SlaterB

Gast
welche willst du nicht verraten?
bist du bei CountDown.java?
ist auch nur ein Link von vielen
 

LP_SE

Aktives Mitglied
Wenns im Fenster angezeigt werden soll wurd ich nen javax.swing.Timer benutzen der alle 1000 millisek die sekunden runterzählt und wenn die sekunden = -1 sind diese wider auf 60 setzt und dafür die minuten verringert.

EDIT: eRaaa war schneller :)
 

Niki

Top Contributor
Hast du Glück dass bei mir gerade Langeweile herrscht :)

//EDIT --> die windowClosing Methode hab ich doch glatt vergessen
Java:
import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingUtilities;

public class JFCountDown extends JFrame {
	
	private long countDown = 5 * 60 * 1000;
	
	private JLabel jlCount = null;

	public JFCountDown(){
		super("Countdown");
		guiInit();
		pack();
		setLocationRelativeTo(null);
		addWindowListener(new WindowAdapter() {

                        @Override
			public void windowClosing(WindowEvent e) {
				dispose();
			}

			@Override
			public void windowClosed(WindowEvent e) {
				System.exit(0);
			}
		});
		
		new Thread(new CountDownTimer()).start();
	}
	
	private void guiInit(){
		Container cont = getContentPane();
		cont.setLayout(new GridBagLayout());
		Insets i = new Insets(3, 3, 3, 3);
		GridBagConstraints c = new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0,
				GridBagConstraints.CENTER, GridBagConstraints.NONE, i, 0, 0);
		
		jlCount = new JLabel(getCountDownAsString());
		JButton jbClose = new JButton("Bitte das Programm schliessen");
		
		cont.add(jlCount, c);
		c.gridy++;
		cont.add(jbClose, c);
		jbClose.addActionListener(new ActionListener() {
			
			public void actionPerformed(ActionEvent arg0) {
				countDown = 0;
				synchronized (JFCountDown.this) {
					JFCountDown.this.notify();
				}								
			}
		});
	}
	
	private String getCountDownAsString(){
		long min = countDown / (60000);
		long sec = (countDown - (min * 60000)) / 1000;
		return min + " min, " + sec + " sec";
	}
	
	private class CountDownTimer implements Runnable{
		public void run() {
			while(countDown > 0){
				countDown-=1000;
				jlCount.setText(getCountDownAsString());
				synchronized(JFCountDown.this){
					try {
						JFCountDown.this.wait(1000);
					} catch (InterruptedException e) {					
					}
				}
			}
			if(countDown == 0){
				JFCountDown.this.dispose();
			}
		}
	}
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			
			public void run() {
				new JFCountDown().setVisible(true);				
			}
		});
		

	}

}
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Mit Countdown Midnestdauer für Teilaufgabenerledigung erzwingen Java Basics - Anfänger-Themen 8
S Stunden/Tage Countdown Java Basics - Anfänger-Themen 9
T Countdown erstellen Java Basics - Anfänger-Themen 7
T Countdown funktioniert nicht Java Basics - Anfänger-Themen 5
W Threads 1h 20min Countdown Java Basics - Anfänger-Themen 5
J Countdown Java Basics - Anfänger-Themen 3
D Erste Schritte Countdown mehrfach verwenden Java Basics - Anfänger-Themen 5
F countdown Java Basics - Anfänger-Themen 5
G Countdown von Heute bis Zieldatum Java Basics - Anfänger-Themen 4
N Countdown Java Basics - Anfänger-Themen 4
W Countdown auf "schwarze Blöcke" Java Basics - Anfänger-Themen 3
F Countdown und dann Aktion Java Basics - Anfänger-Themen 4
C countdown/timer/Zeit warten lassen Java Basics - Anfänger-Themen 14
D Countdown Funktion aus SQl Datenbank Java Basics - Anfänger-Themen 21
N countdown zähl problem Java Basics - Anfänger-Themen 5
O Countdown mit Erhöhung Java Basics - Anfänger-Themen 2
H Countdown Java Basics - Anfänger-Themen 10
T Countdown, der in der selben Zeile bleibt Java Basics - Anfänger-Themen 6
D Timer bzw. Countdown Java Basics - Anfänger-Themen 3
T countdown Methode mit Timer Java Basics - Anfänger-Themen 2
F Countdown Probleme Java Basics - Anfänger-Themen 9
R Countdown erstellen Java Basics - Anfänger-Themen 3
S Countdown auf JPanel ausgeben Java Basics - Anfänger-Themen 6
M Countdown in Java Java Basics - Anfänger-Themen 16
B Countdown zwischen 2 Zeitpunkten Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben