修改JavaFX手风琴
我有一个里面有两个铁板的手风琴,我有一个设计问题。我想看看是否有任何方法可以删除标题周围的边框,您可以在这里看到: 以下是我的CSS代码:修改JavaFX手风琴,java,css,javafx,background,accordion,Java,Css,Javafx,Background,Accordion,我有一个里面有两个铁板的手风琴,我有一个设计问题。我想看看是否有任何方法可以删除标题周围的边框,您可以在这里看到: 以下是我的CSS代码: .accordion .titled-pane .title { -fx-background-color: transparent; -fx-padding: 0.3333em 0.75em 0.3333em -0.5em; } } .accordion .titled-pane>*.content { -fx-backg
.accordion .titled-pane .title {
-fx-background-color: transparent;
-fx-padding: 0.3333em 0.75em 0.3333em -0.5em;
}
}
.accordion .titled-pane>*.content {
-fx-background-color: transparent;
-fx-padding: 0em 0.75em 0em 2em;
}
.accordion .titled-pane>.title>.arrow-button>.arrow {
-fx-background-color: transparent;
}
至少在JavaFX13中,
modena.css
添加了您看到的边框:
.accordion>.titled窗格>.title{
-fx背景色:
线性梯度(至底部,
导出(-fx颜色,-15%)95%,
衍生(-fx颜色,-25%)100%
),
-fx内边界,
-fx体色;
-外汇背景插图:-1 0 0,0 1 1,1 2 2;
-fx背景半径:0,0,0;
}
此“边框”使用三种背景色实现,每种背景色比前一种略多插入。要删除边框,您只需使用:
.accordion>.titled窗格>.title{
-fx背景色:空;
}
下面是一个使用上述CSS的示例(假定位于名为
Main.CSS
的文件中):
导入javafx.application.application;
导入javafx.scene.scene;
导入javafx.scene.control.Accordion;
导入javafx.scene.control.Label;
导入javafx.scene.control.TitledPane;
导入javafx.scene.layout.StackPane;
导入javafx.stage.stage;
公共类主扩展应用程序{
@凌驾
公共无效开始(阶段primaryStage){
手风琴手风琴=新手风琴(
新标题窗格(“标题窗格#1”),新堆叠窗格(新标签(“内容#1”)),
新标题窗格(“标题窗格#2”),新堆叠窗格(新标签(“内容#2”))
);
场景=新场景(手风琴,400200);
scene.getStylesheets().add(getClass().getResource(“/Main.css”).toString());
初级阶段。场景(场景);
setTitle(“JavaFX”+System.getProperty(“JavaFX.version”);
primaryStage.show();
}
}
下面是在Java8U232(Zulu社区)上运行的结果截图:
(折叠):
(扩大):
您会注意到,在展开的标题窗格的屏幕截图中,内容周围有一个边框。这也是由modena.css
添加的。如果需要,也可以使用以下CSS删除:
。标题窗格>*。内容{
-fx背景色:空;
-fx边框颜色:空;
}
在胡闹之后,我终于找到了答案:
.titled-pane .title {
-fx-border-color: null;
}
这是我最初的想法,因为它是有道理的,但不幸的是,它没有消除它。谢谢你的回复。它为我删除了它。您使用的是什么版本的JavaFX?我在使用Java8,我的JavaFX getRuntimeVersion()给了我8.0.181-b12作为确切的版本。@piggy Word。它在Java8U232上对我有效。我编辑了我的答案,以提供一个示例并显示一些屏幕截图。