我正试图为一个web应用程序开发一个GUI,我想设置一个TabPane,在左侧放置选项卡,使选项卡标题保持水平。我已经找到了如何将标签放在左边,但经过多次搜索,我没有成功将标题设置在右边。它们仍然是垂直的,很难阅读。
我怎么能修好它?
您可以使用CSS自定义选项卡和选项卡标签:
.tab *.tab-label {
-fx-rotate: 90;
}
.tab {
-fx-padding: 3em 0.5em 3em 0.5em;
}
这是一个开放的特性请求:RT-19547新的API,用于旋转tabpane选项卡上的文本
功能请求当前处于打开状态,但未计划实现。您可以投票支持或评论功能请求,并链接回此StackOverflow帖子以注册您对该功能的兴趣。
要自己实现这一点,您需要创建一个新的TabPane皮肤或修补现有的TabPane皮肤,这可能并不简单。
在代码中添加此方法,并将 tabPane 传递给它:
void setTabPaneLeftTabsHorizontal(TabPane tabPane){
tabPane.setSide(Side.LEFT);
tabPane.setRotateGraphic(true);
Label l = null;
StackPane stp = null;
for(Tab t : tabPane.getTabs()){
l = new Label(t.getText());
l.setRotate(90);
stp = new StackPane(new Group(l));
stp.setRotate(90);
t.setGraphic(stp);
t.setText("");
}
tabPane.setTabMinHeight(100);
tabPane.setTabMaxHeight(100);
}