Hej :)
Załóżmy, że jest sobie klasa 'Instrument', scena 'AddInstrument.fxml' i oczywiście kontroler do niej 'AddInstrumentController' .
Kiedy użytkownik w GUI wejdźie do tej sceny, to może wyspecyfikować obiekt Instrument np. nadać nazwę, rodzaj itp.
Teraz pytanie: Jak mam zapisać obiekt, który zmodyfikuje użytkownik?? Chce go zapisać przyciskiem zatwierdź i wyjść ze sceny. Ale jak do niej ponownie wrócę to chciałbym powołać nowy obiekt aby użytkownik znowu mógł dodać nowy instrument, zapisać go i tak w kółko :)
To jest skrót kodu, to jest to o co mi chodzi:
Instrument Class:
public class Instrument {
//example of fields which user can specify
private StringProperty name= new SimpleStringProperty();
private StringProperty kindOfInstrument = new SimpleStringProperty();
//Getters and setters
public String getName() {
return name.get();
}
public StringProperty nameProperty() {
return name;
}
public void setName(String name) {
this.name.set(name);
}
public String getKindOfInstrument() {
return kindOfInstrument.get();
}
public StringProperty kindOfInstrumentProperty() {
return kindOfInstrument;
}
public void setKindOfInstrument(String kindOfInstrument) {
this.kindOfInstrument.set(kindOfInstrument);
}
}
AddInstrumentSceneController :
public class Controller implements Initializable{
@FXML
private TextField name;
@FXML
private TextField kindOfInstrument;
/**
* On this object user can specify attributes of his instrument
*/
Instrument instrument = new Instrument();
@Override
public void initialize(URL location, ResourceBundle resources) {
//binding Properties of controlls with Properties from Instrument class
name.textProperty().bindBidirectional(instrument.nameProperty());
kindOfInstrument.textProperty().bindBidirectional(instrument.kindOfInstrumentProperty());
}
}
Będę wdzięczny za każde protipy! Bo jak narazie to tworzę tylko jeden obiekt typu instrument, i jak wracam do sceny to wszystko na tym samym obiekcie się dzieje a ja chce to zapisać i na nowym robić :D Proszę o pomoc i dziękuję :)