如何在按钮内设置文本以在 JavaFX 中放置阴影
How to set a text inside a button to drop the shadow in JavaFX
所以我在控制器中有一个自定义按钮 class,我想制作将在按钮内部的字体以放置阴影。我试过使用-fx-stroke,但它似乎没有任何改变。我想使用的按钮将在程序期间生成。我不熟悉 CSS 所以我只是举了一些例子。现在我有了这个
mineButton(int x, int y,boolean difficult){
this.x=x;
this.y=y;
Font s = new Font(13);
if (difficult){
this.setMaxSize(35, 35);
this.setMinSize(20, 20);
this.setPrefSize(20, 20);
this.setFont(new Font(8));
} else {
this.setMaxSize(35,35);
this.setMinSize(33,33);
this.setPrefSize(34,34);
}
this.setStyle("-fx-background-color: -fx-outer-border,
-fx-inner-border, -fx-body-color;\n" +
" -fx-background-insets: 0, 1, 2;" +
" -fx-background-radius: 5, 4, 3;" +
" -fx-text-fill: white; -fx-font-weight: bold;" );
}
您可以使用 setGraphic 方法更改 Button 内节点的外观。
这是一个文档,其中包含有关如何操作的示例:Using JavaFX UI Controls - Button。
然后您可以将 CSS 应用到您的自定义节点。
示例:
Button button = new Button();
Label label = new Label("Click Me!");
label.setStyle("-fx-effect: dropshadow( one-pass-box , black , 8 , 0.0 , 2 , 0 )");
button.setGraphic(label);
所以我在控制器中有一个自定义按钮 class,我想制作将在按钮内部的字体以放置阴影。我试过使用-fx-stroke,但它似乎没有任何改变。我想使用的按钮将在程序期间生成。我不熟悉 CSS 所以我只是举了一些例子。现在我有了这个
mineButton(int x, int y,boolean difficult){
this.x=x;
this.y=y;
Font s = new Font(13);
if (difficult){
this.setMaxSize(35, 35);
this.setMinSize(20, 20);
this.setPrefSize(20, 20);
this.setFont(new Font(8));
} else {
this.setMaxSize(35,35);
this.setMinSize(33,33);
this.setPrefSize(34,34);
}
this.setStyle("-fx-background-color: -fx-outer-border,
-fx-inner-border, -fx-body-color;\n" +
" -fx-background-insets: 0, 1, 2;" +
" -fx-background-radius: 5, 4, 3;" +
" -fx-text-fill: white; -fx-font-weight: bold;" );
}
您可以使用 setGraphic 方法更改 Button 内节点的外观。
这是一个文档,其中包含有关如何操作的示例:Using JavaFX UI Controls - Button。
然后您可以将 CSS 应用到您的自定义节点。
示例:
Button button = new Button();
Label label = new Label("Click Me!");
label.setStyle("-fx-effect: dropshadow( one-pass-box , black , 8 , 0.0 , 2 , 0 )");
button.setGraphic(label);