我想在程序中显示一些文字,然后尝试使用TextArea
。但是,显示的文本是可变的。如何才能将文本设为只读?
答案 0 :(得分:35)
我是这样做的:
@FXML
private TextArea myText;
然后将以下代码添加到initialise()
:
myText.setEditable(false);
答案 1 :(得分:24)
我需要只读文本字段,但设置已禁用属性使用的样式在上下文中不正确(在我的方案中,文本字段是搜索函数的输入,其中值可以在某些情况下修复 - 禁用文本字段意味着它不是搜索的一部分,而不是修复了值。
最后我使用了:
txtInput.setEditable(false);
txtInput.setMouseTransparent(true);
txtInput.setFocusTraversable(false);
这会导致看起来很正常的文本字段对用户不起作用。
答案 2 :(得分:13)
答案 3 :(得分:7)
在FXML中,将editable =“false”添加到TextField标记中。 或者取消选中Scene Builder中的“可编辑”复选框。
答案 4 :(得分:5)
我想说只需使用Label
。
答案 5 :(得分:3)
<TextField fx:id="input" disable="true"/>
答案 6 :(得分:0)
您可以使用以下语句来使文本区域对象无法通过自动滚动条进行编辑:
textAreaObjectName.setEditable(false);
提示:使用 textAreaObjectName.setText()方法将文本设置为相应的textarea对象之后。