0
点赞
收藏
分享

微信扫一扫

javafx中style没有刷新,css没有效果

记录一次写代码中遇到的问题如图:

javafx中style没有刷新,css没有效果_解决方法

这是第一次打开目前还是好好的,看第二张图:

javafx中style没有刷新,css没有效果_css样式_02

这是第二次打开的tab的标题栏方框直接没了,在就是javafx在第二次打开的时候就直接没有渲染,只剩框架了,虽然能用,但是非常丑陋。

这个代码是前端是由javafx写的客服端其中一个TabPane布局下有很多Tab由于Tab是数据生成的,不是fxml文件写死的所以Tab数量不固定,只能用代码生成,当生成菜单时第二次点击又会生成新菜单如果不清空前面的菜单就会堆在一起,在不行。所以只能每次生成菜单时把TabPane清空。但是一旦清空Tab,Tab的css样式就没了然后无论怎样设置Style都没有效果。

解决方法:

@FXML
private StackPane root;

@FXML
private VBox centPane;

root.getStyleClass().add("-fx-");
//centPane.getStyleClass().add("-fx-");

目前试了有StackPane和VBox布局能支持这样刷新css样式,其它没有试(TabPane是放在这两个布局里面的)。

代码解释:由于TabPane是放在这个大布局里面的,当我为大布局添加css样式时,无论我添加的是什么样的css,放在里面的所有的标签和布局的css样式都会跟着刷新。添加里面的字符串可以什么也不是。只需要在清空TabPan后面调用这个方法就行。(当然在只是我的推测)




举报

相关推荐

0 条评论