如何从文本区域边框中删除阴影

Pet*_*zov 1 javafx javafx-2 javafx-8

我想创建带有黑色边框的文本区域.

TextArea dataPane = new TextArea();
dataPane.setStyle("-fx-border-color: black; -fx-border-width: 1; -fx-border-radius: 16;");
Run Code Online (Sandbox Code Playgroud)

但我得到了这个结果:

在此输入图像描述

你能告诉我如何删除这个蓝色阴影吗?

Ulu*_*Biy 5

蓝色边框不是阴影,而是JavaFX控件的caspian样式中的默认焦点颜色.你可以看到它的定义caspian.css-fx-focus-color默认值#0093ff.

现在我们可以为每个控件覆盖此调色板.所以你也是

dataPane.setStyle("-fx-border-color: black; -fx-border-width: 1; "
                + "-fx-border-radius: 16; -fx-focus-color: transparent");
Run Code Online (Sandbox Code Playgroud)


Ond*_*sky 5

如果要完全删除所有边框,阴影,高光:

.text-area {
    -fx-background-insets: 0;
    -fx-background-color: transparent, white, transparent, white;
}

.text-area .content {
    -fx-background-color: transparent, white, transparent, white;
}

.text-area:focused .content {
    -fx-background-color: transparent, white, transparent, white;
}

.text-area:focused {
    -fx-highlight-fill: #7ecfff;
}

.text-area .content {
    -fx-padding: 10px;
    -fx-text-fill: gray;
    -fx-highlight-fill: #7ecfff;
}
Run Code Online (Sandbox Code Playgroud)