Rajat Khandelwal
Rajat Khandelwal

Reputation: 487

How to set Default CSS for all Buttons in JAVAFx

I have over 100 Buttons in my JAVAfx application and I want to give a DEFAULT styling[given below] to all buttons in the programme. Please help ! :)

-fx-background-color:#3c7fb1;
-fx-text-fill: black;
-fx-font-size: 14px;
-fx-padding: 3 30 3 30;

Upvotes: 1

Views: 10667

Answers (3)

JMax
JMax

Reputation: 797

To apply a default style in an fxml file add a '.button' class to your css file and include it in the Anchor pane

Add this to your css file e.g. app.css

.button {
        -fx-color:black;
        -fx-padding:4px;
        -fx-background-color:blue;
        -fx-background-radius: 10px;
}

Update your AnchorPane tag to include the stylesheet:

<AnchorPane prefHeight="700.0" prefWidth="500.0" stylesheets="@../app.css" >

This will change all buttons to use your style for within the fxml file

Upvotes: 0

ramesh
ramesh

Reputation: 82

It's easy to set default Style for all JavaFX Button in an application. Just give a id to the style sheet which you want to set as default for all button.And then set this id for all button of your application.

Button button =new Button("Button");
Button button1 =new Button("Button");
button.setId("allbtn");
button1.setId("allbtn");
String  style= getClass().getResource("New.css").toExternalForm();
scene.getStylesheets().add(style);
  1. Create buttons
  2. apply id to them (for css as we apply in the html) using setId().
  3. Define CSS for this ID
  4. Finally add CSS file to the Scene Thats it.

And CSS file :

#allbtn{
-fx-color:black;
-fx-padding:4px;
-fx-background-color:#34c669;
-fx-background-radius: 10px;
}

Learn more about JavaFX Button CSS

Upvotes: 0

eckig
eckig

Reputation: 11154

  1. Create a new CSS file.
  2. Attach the CSS file to your Scene.
  3. Put your button styles to .button {}.

Upvotes: 3

Related Questions