如何为通过setLabelFor连接到标签的组件获取标签的StringProperty(JavaFX)?

如何为通过setLabelFor连接到标签的组件获取标签的StringProperty(JavaFX)?,java,javafx,Java,Javafx,我有一个实现 @Override public Control setLabel(Label label) { label.setLabelFor(this); return this; } @Override public Label getLabel() { return (Label) this.queryAccessibleAttribute(AccessibleAttribute.LABELED_BY); } 标签不是控件的内部内容,而是附近的引用控件,而

我有一个实现

@Override
public Control setLabel(Label label) {
    label.setLabelFor(this);
    return this;
}


@Override
public Label getLabel() {
    return (Label) this.queryAccessibleAttribute(AccessibleAttribute.LABELED_BY);
}
标签不是控件的内部内容,而是附近的引用控件,而不是内部

在调用setLabel之前,我需要将来自未来标签的文本绑定到某个属性上。像这样的

绑定(control.labelTextProperty())

如何做到这一点

我会尽力澄清这个问题


对于Label,存在属性labelForProperty(),因此可以在调用setLabelFor方法之前进行绑定。但是对于像TextField这样的控件,我找不到像textPropertyForConnectedLabel和binding这样的属性,只能在(Label)之后。queryAccessibleAttribute(AccessibleAttribute.LABELED_BY)将不为空。

我已经用控件中的help mediator属性解决了这个问题

private StringProperty textLabelProperty = new SimpleStringProperty("");    /**
 *
 */
public Control setLabel(Label label) {
    if (label != null) {
        label.setLabelFor(this);
        textLabelProperty.bind(label.textProperty());
    }
    return this;
}    

public StringProperty labelTextProperty() {
    return textLabelProperty;
}

您无法在IDE的自动完成功能中查找正确的属性名,因为???嗯。。也许我没有提出这个问题。在调用setLabel之前,getLabel by queryAccessibleAttribute返回null。您能澄清一下您的问题吗?是否要在
setLabel
中执行绑定?在这种情况下,标签作为参数存在。或就我个人而言,我真的不明白我们应该回答什么问题:)我编辑了这个问题。抱歉,措辞含糊不清如果您正在扩展标签为的
,则存储应显示在标签上的文本。这是问题吗?