小编Nik*_*Nik的帖子

JavaFX - setText() 不起作用

我无法设置文本字段的文本。没有错误,但文本字段仍然为空。程序的其余部分正在工作,调用该方法并且 System.out.println(...) 打印正确的文本。所以问题是,文本字段的文本无法设置。即使我只是写 textField.setText("0"); 文本字段仍然是空的。当我在 public voidinitialize(...) 下设置文本字段的文本时,它也可以工作。那么为什么它在 setCurrentInfo 中不起作用呢?

@FXML
private TextField textField;

private Info currentInfo;

 @Override
public void initialize(URL url, ResourceBundle rb) {
}   

public void setCurrentInfo(Info currentInfo) {
    textField.setText(currentInfo.getpw1());
    System.out.println(currentInfo.getpw1());
    this.currentInfo = currentInfo;
}
Run Code Online (Sandbox Code Playgroud)

控制器中调用 setCurrentInfo 的部分:

@FXML
private void handleBtn1(ActionEvent event) throws Exception{
    Info info = new Info(textFieldA.getText(), textFieldB.getText());
    FXMLLoader loader = new FXMLLoader();
    loader.setLocation(getClass().getResource("FXMLPassword.fxml"));
    loader.load();
    Stage stage; 
    Parent root;
    if(event.getSource()==btn1){
        //get reference to the button's stage         
        stage=(Stage) btn1.getScene().getWindow();
        //load up OTHER FXML document
        root = …
Run Code Online (Sandbox Code Playgroud)

java javafx fxml

5
推荐指数
1
解决办法
1万
查看次数

Java - ListIterator的无限循环.hasNext()

ArrayList<String> list = new ArrayList<String>();
list.add("test");

while(list.listIterator().hasNext()) {
    System.out.println(list.listIterator().next());
}
Run Code Online (Sandbox Code Playgroud)

这会产生一个带有"测试"的无限循环线.为什么会发生这种情况以及如何解决?

java arraylist infinite-loop listiterator

5
推荐指数
1
解决办法
6147
查看次数

标签 统计

java ×2

arraylist ×1

fxml ×1

infinite-loop ×1

javafx ×1

listiterator ×1