summaryrefslogtreecommitdiff
path: root/src/main/java/kahootgui/Controller.java
diff options
context:
space:
mode:
authorAlisaLinUwU <alisalinuwu@gmail.com>2025-01-26 11:35:35 +0500
committerAlisaLinUwU <alisalinuwu@gmail.com>2025-01-26 11:35:35 +0500
commit9c555bca7ba5a4e5396245b2086df89ded7e0c8c (patch)
tree011f1ded4ee38e3cae4b24b6894ae5fba8dcaaf3 /src/main/java/kahootgui/Controller.java
Initializemain
Diffstat (limited to 'src/main/java/kahootgui/Controller.java')
-rw-r--r--src/main/java/kahootgui/Controller.java97
1 files changed, 97 insertions, 0 deletions
diff --git a/src/main/java/kahootgui/Controller.java b/src/main/java/kahootgui/Controller.java
new file mode 100644
index 0000000..476f9f1
--- /dev/null
+++ b/src/main/java/kahootgui/Controller.java
@@ -0,0 +1,97 @@
+package kahootgui;
+
+import javafx.fxml.FXML;
+import javafx.scene.control.Button;
+import javafx.scene.control.RadioButton;
+import javafx.scene.control.ToggleGroup;
+import javafx.scene.text.Text;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+public class Controller {
+
+ @FXML
+ private ToggleGroup answers;
+
+ @FXML
+ private Text question_text;
+
+ @FXML
+ private RadioButton radio_btn_1;
+
+ @FXML
+ private RadioButton radio_btn_2;
+
+ @FXML
+ private RadioButton radio_btn_3;
+
+ @FXML
+ private RadioButton radio_btn_4;
+
+ @FXML
+ private Button answerBtn;
+
+ private final Questions[] questions = new Questions[] {
+ new Questions("В каком из вариантов представлен корректный формат вывода информации на экран?", new String[] {"Console.Write()", "console.log()", "print()", "System.out.println()"}),
+ new Questions("Какой тип данных отвечает за целые числа?", new String[] {"String", "Float", "Boolean", "Integer"}),
+ new Questions("Где правильно присвоено новое значение к многомерному массиву?", new String[] {"a(0)(0) = 1;", "a[0 0] = 1;", "a{0}{0} = 1;", "a[0][0] = 1;"}),
+ new Questions("Какой метод позволяет запустить программу на Java?", new String[] {"Основного метода нет", "С класса, что был написан первым и с методов что есть внутри него", "Любой, его можно задавать в настройках проекта", "С метода main в любом из классов"}),
+ new Questions("Каждый файл должен называется...", new String[] {"по имени первой библиотеки в нём", "по имени названия пакета", "как вам захочется", "по имени класса в нём"}),
+ new Questions("Сколько параметров может принимать функция?", new String[] {"5", "10", "20", "неограниченное количество"})
+ };
+
+ private int nowQuestion = 0, correctAnswers;
+ private String nowCorrectAnswer;
+
+ @FXML
+ public void initialize() {
+ nowCorrectAnswer = questions[nowQuestion].correctAnswer();
+
+ answerBtn.setOnAction(e -> {
+ RadioButton selectedRadioButton = (RadioButton) answers.getSelectedToggle();
+ if(selectedRadioButton != null) {
+ String toogleGroupValue = selectedRadioButton.getText();
+
+ if(toogleGroupValue.equals(nowCorrectAnswer)) {
+ System.out.println("Верный ответ");
+ correctAnswers++;
+ } else {
+ System.out.println("Не верный ответ");
+ }
+
+ // Это был последний вопрос
+ if(nowQuestion + 1 == questions.length) {
+ radio_btn_1.setVisible(false);
+ radio_btn_2.setVisible(false);
+ radio_btn_3.setVisible(false);
+ radio_btn_4.setVisible(false);
+ answerBtn.setVisible(false);
+
+ question_text.setText("Вы ответили корректно на " + correctAnswers + " из " + questions.length + " вопросов!");
+ } else {
+ nowQuestion++;
+ nowCorrectAnswer = questions[nowQuestion].correctAnswer();
+
+ question_text.setText(questions[nowQuestion].getQuestion());
+ String[] answers = questions[nowQuestion].getAnswers();
+
+
+ List<String> intList = Arrays.asList(answers);
+
+ Collections.shuffle(intList);
+
+ radio_btn_1.setText(intList.get(0));
+ radio_btn_2.setText(intList.get(1));
+ radio_btn_3.setText(intList.get(2));
+ radio_btn_4.setText(intList.get(3));
+
+ selectedRadioButton.setSelected(false);
+ }
+
+ }
+ });
+ }
+
+}