2016-04-23 56 views
1

这是我所想要做的 “控制台” 版本:如何在JavaFX启动时自动将字符串值分配给标签?

String aboutMe; 
    aboutMe = "bla bla bla"; 
    System.out.println(aboutMe); 

和JavaFX中我有这样的:

<Label GridPane.rowIndex="1" fx:id="about"/> 

在Controller.java:

在x.fxml

public String aboutMe = "Bla bla"; 
    public Label about; 

我想只在fmxl中使用“text = aboutMe”...但这不起作用。

使用

public label about = new Label(aboutMe); 

...不工作要么。

如果我有一个构造器,我可以这样做:

public Controller() { 
     about.setText(aboutMe); 
    } 

但我不知道。

任何人有任何想法?

+0

你必须使用文本=的 “aboutMe”,而不是 “文本= aboutMe” – jns

+0

aboutMe是字符串variabel我想用,而不是文字。 –

+0

当您在'Controller'中引用'@FXML专用标签标签'时,您可以设置如下的值:'label.setText(aboutMe)'。问题是你给标签分配一个新的引用,并设置新引用的值,而不是你的fxml文件中的引用。如果你需要一个'Controller'的引用,你可以看看[这里](http://stackoverflow.com/questions/12935953/javafx-class-controller-scene-reference?lq=1) – jns

回答

1

我用它来工作,这样的:

public class Controller implements Initializable { 


public void initialize(URL location, ResourceBundle resources) { 
    about.setText(aboutMe); 
} 

}

+0

只要确保我已初始化,.. – kpie

相关问题