Как сделать область за пределами круглой кнопки не активной в javafx? - PullRequest
2 голосов
/ 06 ноября 2019

Когда я делаю круглую кнопку, подобную этой

Button b = new Button();
b.setShape(new Circle(20.0));
b.setText("BUTTON");
b.setStyle("-fx-background-radius: 50em; " +
           "-fx-min-width: 50px; " +
           "-fx-min-height: 50px; ");

Она все еще может быть нажата в области за пределами круга, как та, которую я пометил красным здесь:

enter image description here

Есть ли способ это исправить?

1 Ответ

4 голосов
/ 06 ноября 2019

Кнопка имеет свойство pickOnBounds, Определяет, как выполняется вычисление выбора для этого узла при запуске MouseEvent или вызовом функции содержимого.
Вам необходимо установить для свойства pickOnBounds значение false

pickOnBounds не кажется настраиваемым из CSS, то есть вам нужно установить его из кода

b.pickOnBoundsProperty().setValue(false);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...