2013-12-09 7 views
3

Я не ветеран кодера JavaFX и хотел бы спросить. Как вы создаете или устанавливаете другую фигуру на кнопку в JavaFX? Кнопки по умолчанию имеют эти округлые прямоугольные формы. Я хотел бы сделать кнопку, подобную изображению ниже, кнопку L-shape.Пользовательские формы кнопок JavaFX

У меня много раз обсуждалась в этой теме, но до сих пор не удалась найти решение.

Вы можете мне помочь?

Image

+0

Не могли бы вы создать файл изображения такого характера и установить узел Button как изображение? – Stevantti

+0

как это сделать? –

ответ

-1

Попробуйте сделать файл изображения этой формы и использовать метод Node.setGraphic(). Пример:

public void start(Stage primaryStage){ 

String u = "http://www.clker.com/cliparts/9/1/5/2/119498475589498995button-red_benji_park_01.svg.med.png"; 
    Image i = new Image(u); 
    Button x = new Button(); 
    x.setGraphic(new ImageView(i)); 
    BorderPane y = new BorderPane(); 
    y.setCenter(x); 

    primaryStage.setScene(new Scene(y, 400, 400)); 
    primaryStage.show(); 
} 

Он будет отображать большую красную кнопку. Но используйте свой образ.

+0

У него все еще есть кнопка округлой прямоугольной формы. Есть ли способ избавиться от него, как на самом деле, следуя форме круга или просто избавляясь от серого цвета кнопки? –

+0

О, я понимаю, что вы имеете в виду, я сделаю некоторые исследования и вернусь к вам. – Stevantti

1

вы также можете использовать свойство CSS -fx-shape для строки пути SVG. Указав форму, область принимает эту форму вместо прямоугольника или закругленного прямоугольника.

2

Существует способ избавиться от серого цвета фона. вы можете настроить его на непрозрачную, тогда ваша кнопка будет всего лишь изображением. в вашем случае это будет x.setStyle («- fx-background-color: transparent») x является вашей кнопкой.

Смежные вопросы