#java #css
#java #css
Вопрос:
Это мой первый раз (и вопрос) здесь. Я создаю программу, которая работает довольно хорошо, за исключением того, что я хочу по-разному определять стиль разных кнопок. Я работаю JavaFX
и определяю стиль разных вещей с .cs
помощью s-файла. Я искал об этом, но не был уверен, как установить несколько изображений для одного и того же типа элемента (если вы так это называете; в моем случае это кнопка). У меня есть 4 buttons
, которые я хочу определить отдельно в .css
файле (с разными изображениями). У меня это пока для первой кнопки:
css (gameTestCSS.css):
.button{
-fx-graphic: url("https://smashboards.com/proxy.php?image=http://i.imgur.com/5cgHjwu.pngamp;hash=113d5b8f78bcfb3660ec25d47ef1e5d7");
JavaFX (GameTest.java ):
Button btn = new Button();
btn.getStylesheets().add(this.getClass().getResource("gameTestCSS.css").toExternalForm());
Однако это только для 1 кнопки. У меня есть другая кнопка:
button btn1 = new Button();
и хотел бы оформить его иначе, чем первый (другой графический):
.button{
-fx-graphic: url("https://smashboards.com/proxy.php?image=http://i.imgur.com/1WQpSsL.pngamp;hash=9c7b71d564e2b1d8ee6ee0aae27fb7d9");
Я понятия не имею, как это сделать правильно, поскольку, если я включу оба .css
кода, которые я опубликовал выше, при использовании будет применено только второе изображение к обеим кнопкам button.getStyleSheets()
.
Я не знаю, правильно ли я задал этот вопрос, или это должно быть здесь, но мне нужна небольшая помощь в решении этой проблемы, с которой я столкнулся. Это мой первый вопрос здесь, поэтому, пожалуйста, потерпите меня, если у меня есть какие-либо ошибки в форматировании или тому подобное. Заранее большое спасибо! 🙂
Комментарии:
1.
.button
насколько мне известно, для каждой кнопки. Вы можете сделатьbtn.setStyleClass("className")
и в своем css иметь.className
в качестве своего селектора.2. @MichaelPickett Спасибо за ваш ответ! Не могли бы вы подробнее рассказать о
.setStyleClass
методе? Я попытался сделать это просто, но получил ошибку (вероятно, на моей стороне, ха-ха). Итак, если у меня есть следующие селекторы в.css
файле: .button1 //code (установка графики) .button2 // code (установка графики) Как бы мне применить их к разным кнопкам? Большое спасибо: D, также приношу извинения за форматирование, не уверен, как правильно это сделать в комментариях!3. Возможно, я забыл один шаг. Я не на своем компьютере, поэтому не могу его правильно протестировать. Попробуйте выполнить
btn.getStyleClass().add("className")
. Кажется, я забыл среднюю часть4. @MichaelPickett сработал как шарм! Большое спасибо за помощь! Это выглядит довольно круто: D i.imgur.com/TIHbolg.png (остальное будет добавлено позже) Еще раз спасибо!!
5. В любое время. Выглядит великолепно.
Ответ №1:
Вы можете изменить внешний вид каждой кнопки по отдельности
Button button = new Button("Pocho");
button.setStyle("-fx-background-color:#D3D3D3;");
Button button1 = new Button("Pocho1");
button1.setStyle("-fx-background-color:#000000;");
Комментарии:
1. Это противоречит цели использования CSS.