Задать цвет кнопки - Java
Формулировка задачи:
В цикле создаётся n-ое количество кнопок.
Необходимо чтобы при нажатии на копку,
она окрашивалась в зелёный цвет.
Так не получилось:
package javaapplication32; import java.util.ArrayList; import java.util.List; import javafx.application.Application; import javafx.geometry.Insets; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class JavaApplication32 extends Application { private final VBox vbox = new VBox(30); private final List<Button> list = new ArrayList<>(); /** * @param args the command line arguments */ public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) throws Exception { vbox.setPadding(new Insets(30)); createButton(); addEvents(); Scene scene = new Scene(vbox, 600, 600); primaryStage.setScene(scene); primaryStage.show(); } private void createButton() { for (int i=0; i<10; i++) { Button btn = new Button("Кнопка " + i); list.add(btn); vbox.getChildren().addAll(btn); } } private void addEvents() { for (int i=0; i<list.size(); i++) { list.get(i).setOnAction(e -> { list.get(i).setStyle("-fx-background-color: green"); // здесь проблема }); } } }
Решение задачи: «Задать цвет кнопки»
textual
Листинг программы
btn.setOnMousePressed(e->{ btn.setStyle("-fx-background-color: green"); }); btn.setOnMouseReleased(e->{ btn.setStyle("-fx-background-color: grey"); });
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д