Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Java - Přepsání kódu do JavaFX

package settlers;

import java.text.SimpleDateFormat;
import java.util.Date;
import javafx.animation.KeyFrame;
import javafx.animation.Timeline;
import javafx.event.ActionEvent;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.util.Duration;

public final class Clock extends javafx.scene.control.Label {

    private final SimpleDateFormat SIMPLE_DATE_FORMAT;
    private final double SCREEN_WIDTH = javafx.stage.Screen.getPrimary().getVisualBounds().getWidth();

    public Clock(String type, int right_edge, int y, int width, int height) {
        setTextFill(Color.BLUE);
        setLayoutX(SCREEN_WIDTH - right_edge);
        setLayoutY(y);
        setPrefSize(width, height);
        setFont(Font.font("Arial", 15));
        switch (type) {
            case "date":
                SIMPLE_DATE_FORMAT = new SimpleDateFormat("dd. MM. yyyy");
                break;
            case "time":
                SIMPLE_DATE_FORMAT = new SimpleDateFormat("hh:mm:ss a");
                setFont(Font.font(40));
                break;
            default:
                SIMPLE_DATE_FORMAT = new SimpleDateFormat("EEEE");
        }
        Timeline timer = new Timeline(new KeyFrame(Duration.millis(250), (ActionEvent event) -> {
            setText(SIMPLE_DATE_FORMAT.format(new Date()));
        }));
        timer.setCycleCount(Timeline.INDEFINITE);
        timer.play();
    }
}

Trochu jsem ten kód zjednodušil a timer nastavil na 250ms - Doufám, že jsi spokojený.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny