Java FX TextArea 对齐
Posted
技术标签:
【中文标题】Java FX TextArea 对齐【英文标题】:Java FX TextArea Alignment 【发布时间】:2013-12-21 07:56:12 【问题描述】:我想在 Java FX 文本区域内显示文本。
我的代码是:
TextArea txt = new TextArea();
txt.setEditable(false);
txt.setStyle("-fx-font-alignment: center");
txt.setText(text);
但我无法设置文本对齐方式(在 TextArea
内)
我试过了:
txt.setStyle("-fx-font-alignment: center");
但是没用
【问题讨论】:
【参考方案1】:将样式应用于文本子项:
.text-area *.text
-fx-text-alignment: center;
【讨论】:
奇怪的是,当我在 Scene Builder 17.0.0 中将此作为外部 css 加载并将 .text-area 类应用于 TextArea 时,Scene Builder 无法识别 css 检查器中的某些 css 已更改。跨度> 【参考方案2】:我找到了一个仅使用 CSS 将 textarea 的内容水平居中的解决方案。
我在 css 中使用了一个类:
.centeredTextArea .scroll-pane .content .text
-fx-text-alignment: center;
在我添加之后
styleClass="centeredTextArea"
到我的 textArea 控件。
【讨论】:
【参考方案3】:您可以使用 Scene Builder 来制作 UI,这非常简单。 在那里您可以轻松地使用“Java fx 文本区域”和一切。 您所要做的就是导入 jfoenix 库就可以了,而且无需编码。
【讨论】:
虽然这个工具对开发者很有用,但它并不构成对他们问题的真正答案,下次请把这种讨论作为评论留下。【参考方案4】:试试 setStyle(-fx-padding: 0 10 0 10)。
所以在这种情况下,0 - 顶部 10 - 对 0 - 底部 10 - 左填充。
您可以将 10 替换为所需的值。它只是将您的文本放入文本框中,填充/空格为 10。有类似的问题。这对我有用。
【讨论】:
【参考方案5】:我不知道你为什么要使用 textArea,但如果你只是想显示一些文本,你应该使用 TextField。
否则显示文本使用:
Text text = new Text("text");
但我不知道你到底想做什么。
【讨论】:
以上是关于Java FX TextArea 对齐的主要内容,如果未能解决你的问题,请参考以下文章