JavaFX8中去掉ScrollPane边框的3种方式

JavaFX8中的ScrollPane默认有个灰色边框,如下图:

20150912165731

不管基于什么想法,我现在想去掉这个灰色边框(注意选中时灰色边框会变成蓝色),以下是去掉ScrollPane边框的3种方式:

1) JavaFX8中带有一个名为edge-to-edge的class,可以直接实现无边框效果

sp.getStyleClass().add("edge-to-edge");

默认的灰色边框和选中时蓝色边框都会消失,效果非常好

20150912170007

这种方法可能有风险,因为不属于API的范畴,不知道Oracle啥时候就改了

2)  自定义CSS去掉边框-方法1

.noborder{
    -fx-padding: 0;
}
sp.getStyleClass().add("noborder");

默认的灰色边框会消失

20150912170007

但是选中时的蓝色边框不会消失(整体有变浅,但是右边的ScrollBar的颜色和整体颜色不搭,仅仅看整体的颜色也可以接受)

20150912170238

在padding的设置后面再补一个background-insets的设置

.noborder{
    -fx-padding: 0;
    -fx-background-insets: 0;
}

完美

20150912170007

3) 自定义CSS去掉边框-方法2

.noborder{
    -fx-background-color: transparent;
    -fx-control-inner-background: transparent;
}

实际上只要第一句background-color就生效了,stackoverflow上说第二句有个什么其他的作用

 

本文参考了stackoverflow上大神的回复:http://stackoverflow.com/questions/17540137/javafx-scrollpane-border-and-background

------------------

欢迎访问我的独立博客:http://www.alanzeng.cn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值