我想让用户可以选择TextArea的颜色:

private void updateTextArea(){
        textArea.setStyle("-fx-text-fill: #" + textColor + "; -fx-background-color: #" + backgroundColor);
    }


但是,这不会改变整个背景的颜色。我已经在互联网上发现要更改文本区域的背景,我需要在外部CSS文件中执行类似的操作。

.text-area .content {
   -fx-background-color: black ;
}


我该如何使用setStyle()?

最佳答案

您可以通过从TextArea中提取内容节点并对其应用样式来实现。但是,只有在舞台上显示TextArea后,它才起作用。

用法:

Node node = textArea.lookup(".content");
node.setStyle("-fx-background-color: black;");

关于css - 设置TextArea的背景,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28549670/

10-15 10:41