JavaFX中的标签和文本差异

时间:2014-06-23 20:35:11

标签: java javafx fxml

javafx.scene.text.Text和javafx.scene.control.Label有什么区别?

文档说:

  • Label是不可编辑的文本控件。
  • Text类定义显示文本的节点。

但Label类有一个方法“setText”和“textProperty”,因此是可编辑的。

3 个答案:

答案 0 :(得分:69)

Harry Blargle指出,"不可编辑"意味着"用户无法编辑。"因此标签和文本都是不可编辑的。

标签和文字具有不同的CSS属性。 Label inherits from Labeled, Control, and Region,这意味着它继承了Text没有的许多可设置的属性。标签可以具有对齐,图形,背景,边框,显示的键盘助记符,内置包装,并且可以使用ellipsis(" ...")进行智能剪裁。 / p>

文字可以参加TextFlow。 (从技术上讲,Label也可以,但它被视为另一个嵌入式控件,并不作为文本布局。)

通常,如果要通过在其旁边放置一个或多个单词来显示输入控件的用途,和/或您希望允许直接键盘导航到输入控件,则使用Label。如果要显示与输入无关的文本内容,请使用文本。

答案 1 :(得分:13)

Text是几何形状(如矩形或圆形),而 Label是一个UI控件(如Button或CheckBox)。

在Swing中,几何形状仅限于绘画机制, 而在JavaFX中,它们可以以更通用的方式使用。

答案 2 :(得分:0)

标签

  • 标签显示用户无法直接更改或编辑的文本或图像。 *为标签指定图片。

TextFields

  • TextField显示文本或图像,用户可以直接更改或编辑..
  • 不要为文本字段指定图片