2014-11-10 3 views
0

Я пытаюсь обновить текст index в моем ListView, когда текст вводится в TextField, но я не знаю, как получить доступ к элементу, чтобы обновить текст. Я знаю, что index пункта, но я просто не могу показаться, чтобы выяснить, как обновить текст ..Обновить текст в ListView

@FXML 
ListView connections; 

public ObservableList names = FXCollections.observableArrayList(); 

@FXML 
public void onInputChanged(KeyEvent event){ 
    TextField fld = (TextField) event.getTarget(); 
    if(fld.getId().equals("txtName") && index > -1){ 

    } 
} 
+1

Можете ли вы более четко объяснить, что вы имеете в виду? Что вы подразумеваете под «текстом« индекса »(когда' index' выглядит как 'int')? Какова связь между «ListView», «ObservableList» и «TextField»? Это также поможет, если вы правильно напечатаете 'ListView' и' ObservableList' вместо использования необработанных типов (например, 'ListView <...> connections;' (замените '...' на фактический тип вещи, который вы показываете). –

ответ

1
names.set(index, fld.getText()); 
+0

Awesome , это именно то, что я искал! –

0

Я думаю, вам нужно использовать JavaFX Properties т.е. «SimpleStringProperty» на самом деле изменить строку в «именах».

Этой ссылка делает это объяснить довольно точно: https://gist.github.com/andytill/3116827

Надеется, что это помогает.

Смежные вопросы