Textfeld mehrmals ändern

...komplette Frage anzeigen

2 Antworten

Hi,

ich hab hier mal was gebastelt ich hoffe das das ungefair dem entspricht, wonach du gesucht hast ...

package de.Controller;

import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;

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

public class GuteFrage {

private static JLabel coutdown;
private static int counterValue = 10;
private static Timer timer;

public static void main(String[] args) {

    JFrame frame = new JFrame("Countdown");
    frame.setSize(100, 100);

    coutdown = new JLabel("Click to Start");
    frame.add(coutdown, BorderLayout.LINE_START);

    JButton startButton = new JButton("Count");
    startButton.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            // TODO Auto-generated method stub
            countDown();
        }
    });
    frame.add(startButton, BorderLayout.CENTER);
    frame.setVisible(true);

}

private static void countDown() {
    timer = new Timer(1000, new ActionListener() {

        public void actionPerformed(ActionEvent e) {
            // 1 Sekunde abziehen
            counterValue--;

            // Zahl in Label darstellen
            coutdown.setText(String.valueOf(counterValue));

            // Falls Zähler = 0, Countdown abgelaufen!
            if (counterValue == 0) {
                System.out.println("Counterdown ausgelaufen!");

                // Timer stoppen
                timer.stop();
            }
        }
    });

    // Timer starten
    timer.start();
}

}

Ich glaube, damit haust du ihn K.O.

0
@PerfectMuffin

:D ich hoffe ja nicht aber btw wie machst du das mit dem code bei mir ist der ja ziemlich verglitcht

0
@Yellown

STRG+K setzt nach jedem selektierten Zeilenvorschub einen horizontalen Tabulator.

Wenn nichts selektiert ist, macht es einfach einen HT.

1

Ich sitze da schon Stunden dran

Das ist eine ziemlich alberne Lüge.

Ich weiß nicht, wie dein GUI aufgebaut ist, oder wann zaehlen() aufgerufen werden soll, aber das ist eigentlich in 10 Sekunden zu schaffen.

Tatsächlich habe ich das gestern, ganz ehrlich, 4 Stunden versucht, mir unterschiedlichste Tutorials angeguckt oder mir irgendwelche Hilfe Artikel durchgelesen. ICh verfüge leider nur über grundlegende schul-Kenntnisse, wieso können "wissende" Leute nicht anderen wie mir, die auf dem Gebiet vielleicht nicht so viel Ahnung habe, nicht einfach helfen, anstatt irgendwelche leeren Verurteilungen zu machen...... Ich glaube du hast das Problem nicht verstanden. Versuch das mal selber, mit dem Timer - es geht nicht darum dass ch drei mal auf einen Button drücken sondern er soll von selber zählen! Falls du dazu im Stande bist, würde ich mich über eine konstruktive Antwort freuen!

0
@911BE

ApiDoc von java.lang.Thread

Wenn dir das nicht reicht, wirf mal einen genaueren Blick auf die Funktion static void sleep(long millis)...

mir unterschiedlichste Tutorials angeguckt oder mir irgendwelche Hilfe Artikel durchgelesen.

Und was für welche bitteschön? Wonach hast du gegoogelt?

0
@911BE

Falls du dazu im Stande bist, würde ich mich über eine konstruktive Antwort freuen!

Für deinen Stand extrem arrogante Aussage.

Definiere dein Problem klarer, auch für google, wenn du dort nämlich nichts gefunden hast, musst du ziemlichen Müll eingegeben haben.

1
@PerfectMuffin

Wenn ich oben sage, dass ich mich stundenlang (ja, stundenlang....) durch derartige Dokomete etc. gewühlt habe, deshalb ausdrücklich um eine "Syntax"-Antwort zu meinem Modell bitte und du mich aber nur wieder an die API verweist, lässt das durchaus Zweifel dadran aufkommen, dass du das hinbekommst - wenn das in 10 Sekundeb möglich ist, warum machst du das nicht einfach gerade?

0
@911BE

WEIL ICH HIER NICHT DEINE HAUSAUFGABEN MACHE!

deshalb ausdrücklich um eine "Syntax"-Antwort zu meinem Modell bitte

AHA, du kriegst also GUI hin, aber abgesehen davon beherrschst du nicht einmal die PRIMITIVSTEN GRUNDLAGEN!?

und du mich aber nur wieder an die API verweist, lässt das durchaus Zweifel dadran aufkommen, dass du das hinbekommst

Das ist ja wohl der GIPFEL der Unverschämtheit! Als Java-Programmierer MUSST du mit der API arbeiten UND, viel wichtiger: SELBST DENKEN KÖNNEN!

0
@PerfectMuffin

Aber bitte, WIE DU WILLST:

public void ActionPerformed(ActionEvent e)throws InterruptedException{

    Thread.sleep(1000); // Dieser Befehl kostet dich eine Sekunde, verwende ihn in Spaghetticode, Schleifen, mir egal.
    //Dein Code hier    

}
0
@PerfectMuffin

DU zweifelst an MEINEN Fähigkeiten?

Es ist einfach unpädagogisch, Leuten immer direkt die Lösung zu geben, vor allem, wenn es Schüler sind, die das selbst hinkriegen sollten.

0
@PerfectMuffin

Oh, halt, deine Methode soll ja "zaehlen" heißen, sorry, mein fehler.

public void zaehlen()throws InterruptedException{

    Thread.sleep(1000); // Dieser Befehl kostet dich eine Sekunde, verwende ihn in Spaghetticode, Schleifen, mir egal.
    //Dein Code hier    

}

Ach ja und noch ein Fehler meinerseits: actionPerformed schriebt man klein.

0

Was möchtest Du wissen?