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ę :)