Witam serdecznie :)
Mam problem i nie do końca rozumiem dlaczego mi to nie działa - jedynie się domyślam ale wolę się upewnić ;)
Mój kod wygląda (pisane w javaFX)
public class CreaterTabPane extends TabPane{
private String[] monthsNameString = {"Styczeń","Luty","Marzec","Kwiecien","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"};
private MonthTabCreater[] monthsTab;
public CreaterTabPane(){
this.setTabClosingPolicy(TabClosingPolicy.UNAVAILABLE);
this.setSide(Side.TOP);
monthsTab = new MonthTabCreater[monthsNameString.length];
ComboBox<String> monthsComboBox = new ComboBox<>();
nameComboBox.setValue("");
nameComboBox.setPromptText("Podaj nazwę");
nameComboBox.setEditable(true);
nameComboBox.setVisibleRowCount(10);
ObservableList<String> dateMonthsObservableList = FXCollections.observableArrayList();
monthsComboBox.setItems(dateMonthsObservableList);
for(int i=0;i<monthsNameString.length;i++){
monthsTab[i] = new MonthTabCreater(monthsNameString[i],monthsComboBox,dateMonthsObservableList);
this.getTabs().add(monthsTab[i]);
}
}
}
A tutaj klasa monthTabCreater
public class MonthTabCreater extends Tab{
public MonthTabCreater(String title,ComboBox<String> comboBox,ObservableList<String> observableList){
super(title);
VBox addBox = new VBox(8);
addBox.setPadding(new Insets(15));
addBox.getChildren().addAll(hBox,nameComboBox,costTextField,addButton);
gridPane.add(addBox, 2, 0);
tutaj skróciłem kod bo on ma ponad 100 linijek ale myślę, że to już wystarczy.
To może powiem co chce zrobić. Jak widać na zdjęciu chce utworzyć 12 takich samych zakładek ze wspólnym comboBox-em ale jak tworzę obiekt tak jak w kodzie to comboBox dodaje się tylko do ostatniej zakładki i nie wiem właśnie dlaczego tak się dzieje.
- 4prog.png (8 KB) - ściągnięć: 110