хочу чтобы когда на Button JavaFX наводился курсор, он подсвечивалась. Как это сделать? Не нашел подходящего Property.
Если вы хотите просто стиль поменять при наведения курсора то Вы можете достичь этого с помощю css, просто задав нужный вам параметр в псевдоклассе :hover.
.your-class:hover {
// some parameters
}
то есть Вам надо будет записать стили в css файл и подключить его как описано тут. Потом добавить класс стиля или идентификацию в Button.
style.css файл
.my-button:hover {
-fx-background-color: green;
}
Вот и java класс.
package styled.button;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.AnchorPane;
import javafx.stage.Stage;
public class StyledButton extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
AnchorPane anchorPane = new AnchorPane();
anchorPane.getStylesheets()
.add(getClass().getResource("/style.css").toExternalForm());
Button button = new Button("Hover Button");
button.getStyleClass().add("my-button");
anchorPane.getChildren().add(button);
primaryStage.setScene(new Scene(anchorPane, 400, 600));
primaryStage.show();
}
}
При наведения курсора задний фон кнопки изменится на зеленый.
или же это можно сделать программно:
package button.hover;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.AnchorPane;
import javafx.stage.Stage;
public class ButtonHover extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
AnchorPane anchorPane = new AnchorPane();
Button button = new Button("Hover Button");
button.setOnMouseEntered(event -> {
button.setStyle("-fx-background-color: green");
});
button.setOnMouseExited(event -> button.setStyle(""));
anchorPane.getChildren().add(button);
primaryStage.setScene(new Scene(anchorPane, 400, 600));
primaryStage.show();
}
}
onMouseEntered:
Определяет функцию, которая будет вызываться, когда мышь над элементом.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости