Java – Lesson 7

Ukázkový příklad [cviceni6_ukazka]

Doplňte ovládání pomocí prvku v GUI (Button, Slider atd.).

Vytvořte třídu Record pro záznam skóre. Mohla by obsahovat jména a skóre. Ukládejte získané skóre a vypisujte ho v okně. Pro skóre můžete použít na začátek ListView nebo něco hezčího, jako je Tabulka (TableView).

Doplňte Váš program tak, aby bylo možné zapsat jméno a následně odeslat výsledek do výsledkové listiny. Skóre by mohlo být např. počet sestřelených draků apod. Přízpůsobte prosím své aplikaci.

Přidejte úpravu záznamu, kde např. doděláte možnost zobrazení pouze nejvyššího skóre pro každého hráče.

Uložte/načtěte hodnoty zobrazených skóre do/z textového souboru ve formátu CSV. Každý řádek bude obsahovat dvojicí jméno, hodnota oddělené středníkem (<NAME>;<VALUE>).

Vzhled si upravte podle sebe. Příklad

Příklady kódu:

BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("file.csv"));
bufferedWriter.write("text");
bufferedWriter.newLine();
BufferedReader bufferedReader = new BufferedReader(new FileReader("file.csv"))
List<String> lines = Files.readAllLines(Paths.get("file.csv"));
for (String line : lines) {
   String[] parts = line.split(";");
   ...
}

Přidání posluchače na slider a propojení s ArrayListem pro práci s daty

sliderAngle.valueProperty().addListener((observableValue, oldValue, newValue) -> this.setAngle(newValue.doubleValue()));
List<Record> data = new ArrayList<>();
data.setItems(FXCollections.observableList(highScore));
//trideni
data.getItems().sort(Comparator.nullsLast((score1, score2) -> -Integer.compare(score1.getScore(), score2.getScore())));