如何从TableView中删除蓝色焦点边框?

问题描述 投票:0回答:2

我正在设计 TableView 的样式。我将边框颜色设置为白色(与背景颜色相同),因此它是不可见的。但是,当表格获得焦点时,边框会变成蓝色。我尝试添加

table-view:focused { -fx-border-color: white; }
来修复它,但没有帮助。我该如何解决这个问题?

我没有添加屏幕截图,因为当我点击

Print Screen
时,表格失去焦点。

下面是我的完整样式表(如果相关的话):

.table-view .column-header,
.table-view .column-header .filler,
.table-view .column-header-background .filler {
    -fx-background-color: white;
    -fx-border-width: 0;
}

.table-view .column-header {
    -fx-font-size: 16px;
    -fx-border-width: 0 0 1 0;
    -fx-border-color: #efefef;
}

.table-view .column-header .label {
    -fx-alignment: center_left;
    -fx-font-size: 16pt;
    -fx-padding: 5 0 15 0;
}

.table-row-cell,
.table-row-cell:odd {
    -fx-background-color: white;
}

.table-row-cell:hover {
    -fx-background-color: #efefef;
}

.table-row-cell:selected {
    -fx-background-color: white;
    -fx-text-fill: black;
}

.table-view .table-cell {
    -fx-border-color: efefef;
    -fx-border-width: 1 0 0 0;
    -fx-font-size: 14px;
    -fx-padding: 5 3 15 3;
}

.table-view {
    -fx-border-color: white;
}

.table-view:focused .table-cell {
    -fx-text-fill: black;
}
java javafx javafx-css
2个回答
1
投票

如果您使用 Outline CSS 属性并将其设置为 none,则应删除添加到表格中的蓝色边框。 所以,在这里设置轮廓:当聚焦时,你的桌子上没有轮廓。

.table-view:focus {
    outline: none;
}

0
投票

我是这样解决问题的:

.table-view:focused {
    -fx-background-color: -fx-box-border, -fx-control-inner-background;
    -fx-background-insets: 0, 1;
}

我用于聚焦表格视图的声明与非聚焦表格视图相同 - 请参阅https://gist.github.com/maxd/63691840fc372f22f470#file-modena-css-L618

© www.soinside.com 2019 - 2024. All rights reserved.