Как удалить синюю рамку фокуса из TableView? - PullRequest
0 голосов
/ 02 августа 2020

Я создаю стиль для 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;
}

1 Ответ

1 голос
/ 02 августа 2020

синяя граница, добавленная к вашей таблице, должна быть удалена, если вы используете свойство контура css и установите для него значение none. Итак, установите схему: нет для вашей таблицы при фокусировке.

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