2015-11-28 3 views
0

У меня есть чрезвычайно тривиальный случай. У меня есть кнопка, и я хочу добавить значок к этой кнопке. Файловая структура проекта выглядит следующим образом:css стиль для кнопки не работает

testpackage/ 
    - Test.java 
    - add.gif 
    - my.css 

Таким образом, этот код работает относительно нормально:

Button b1 = new Button();   
b1.setStyle("-fx-background-image: url('/testpackage/add.gif');" + 
      "-fx-background-repeat: no-repeat;" + 
      "-fx-background-position: center;"); 

Но я не хочу, чтобы жёстко стиль CSS, вместо этого я хочу использовать my.css. Этот файл - my.css - выглядит следующим образом:

Однако, когда я пытаюсь использовать его как так

Button b1 = new Button();   
b1.getStyleClass().add("add-button"); 

он не работает. Спасибо за помощь заранее!

ответ

1

Вы должны добавить таблицы стилей к сцене первыми:

Scene scene = new Scene(new Group(), 500, 400); 
scene.getStylesheets().add("path/stylesheet.css"); 

Затем вы можете назначить классы, как вы делали выше.

1

Вы также должны добавить таблицу стилей.

b1.getStylesheets().add(this.getClass().getResource("my.css").toExternalForm(); 
b1.getStyleClass().add("add-button"); 
Смежные вопросы