JavaFX中的标签和文本差异

mul*_*080 51 java javafx fxml

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

文件说:

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

但Label类有一个方法"setText"和"textProperty",因此是可编辑的.

VGR*_*VGR 73

正如Harry Blargle指出的那样,"不可编辑"意味着"不能被用户编辑".因此,Label和Text都是不可编辑的.

标签和文本具有不同的CSS属性. Label继承自Labeled,Control和Region,这意味着它继承了Text没有的许多可定制属性.标签可以具有对齐,图形,背景,边框,显示的键盘助记符,内置包装,并且可以使用省略号("...")进行智能剪裁.

文本可以参与TextFlow.(从技术上讲,Label也可以,但它被视为另一个嵌入式控件而不是文本.)

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


Jan*_*nar 15

A Text是几何形状(如矩形或圆形),而 LabelUI控件(如Button或CheckBox).

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