当TableView聚焦时,我想移除它的蓝色边框。

我签入了caspian.css,对于Button和TextField这样的大多数组件,可以执行如下操作:
.table-view:focused {
-fx-background-color: -fx-focus-color,-fx-box-border,-fx-control-inner-background;
-fx-background-insets: -1.4, 0, 1;
-fx-background-radius: 1.4, 0, 0;
/*....*/
-fx-padding: 1; /* 0.083333em; */
}最后,我的问题是关于CSS的。我可以在样式表中重写这个pseudoclass 规范,而不是尝试将颜色转换成透明的?
发布于 2012-11-01 18:23:39
是的你可以。在样式表中,使用自己选择的JavaFX CSS属性定义完全相同的CSS选择器,如下所示:
.table-view:focused {
-fx-background-color: red /* or transparent or other preferred color */,-fx-box-border,-fx-control-inner-background;
-fx-background-insets: -1.4, 0, 1;
-fx-background-radius: 1.4, 0, 0;
/*....*/
-fx-padding: 1; /* 0.083333em; */
}发布于 2016-05-20 16:16:04
因为JavaFX 8有一个新的主题“modena”,但由于同样的老问题,我想更新Uluk的答案,并给出一些进一步的信息:
如果你想知道,从哪里来的一些风格,你可以看看modena.css。您可以在jfxrt.jar中找到这个css文件,它本身可以在您的JRE或JDK安装目录中找到。在Ubuntu14.04上,jdk主页通常位于
/usr/lib/jvm/java-8-oracle/jfxrt.jar应该在这里
/usr/lib/jvm/java-8-oracle/jre/lib/ext打开jar-文件,查看/com/sun/javafx/场景/control/皮肤/modena目录,您将在其中找到modena.css。
从406行开始,您可以看到这样的标题
/* ==== BUTTON LIKE THINGS ============================================== */本节下的css指定了许多控件和容器的背景和边框。您只需搜索目标类即可。我将以按钮为例演示它:对于按钮类,将指定以下css
-fx-background-color: -fx-shadow-highlight-color, -fx-outer-border, -fx-inner-border, -fx-body-color;
-fx-background-insets: 0 0 -1 0, 0, 1, 2;出于某些原因,他们不使用边框,而是使用多个背景模拟一个边框的外观。因此,如果您只想删除边框,您必须调整背景和嵌入属性。
最后,如果要删除聚焦效果,则必须覆盖此默认css。
.button:focused,
.toggle-button:focused,
.radio-button:focused > .radio,
.check-box:focused > .box,
.menu-button:focused,
.choice-box:focused,
.color-picker.split-button:focused > .color-picker-label,
.combo-box-base:focused,
.slider:focused .thumb {
-fx-background-color: -fx-focus-color, -fx-inner-border, -fx-body-color, -fx-faint-focus-color, -fx-body-color;
-fx-background-insets: -0.2, 1, 2, -1.4, 2.6;
-fx-background-radius: 3, 2, 1, 4, 1;
}对于您选择的控件,请使用上面的背景和嵌入的默认定义。例如,按钮:
.button:focused {
-fx-background-color: -fx-shadow-highlight-color, -fx-outer-border, -fx-inner-border, -fx-body-color;
-fx-background-insets: 0 0 -1 0, 0, 1, 2;
}https://stackoverflow.com/questions/13182865
复制相似问题