我是java和javafx的新手,我的手风琴有问题。
基本上,我希望将相同fxml的3倍加载到带有控制器新实例的手风琴中
@FXML public void AddAccordion()
{ if(accordion.getPanes().size()<=14){
this.main.titlepanelist.add( new TitledPane("Number: "+ (accordion.getPanes().size()), TitledPane));
try {
FXMLLoader loader= new FXMLLoader(Main.class.getResource("Pane.fxml"));
Parent root = (Parent) loader.load();
this.main.titlepaneliste.get(this.main.titlepaneliste.size()-1).setContent(root);
PaneGuiController paneGuiController = loader.getController();
paneGuiController.setMain(this.main,accordion.getPanes().size());
accordion.getPanes().add(this.main.titlepaneliste.get(this.main.titlepanelist.size()-1));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}}
这里的窗格控制器:
public class CardioPaneController {
public Main main;
int nummer;
@FXML private TextField textfield;
@FXML private Button button;
public void setMain(Main main,int nummer)
{
this.main=main;
his.nummer=nummer;
}
@FXML private void buttonclicked()
{
this.main.array[nummer].text=textfield.getText();
}
如果我加载它并打印this.main.array的内容:
Array [0]=3
Array [1]=3
Array [2]=3
但它应该打印:
Array [0]=1
Array [1]=2
Array [2]=3
如果我最后保存第一个内容,则会显示:
Array [0]=1
Array [1]=1
Array [2]=1
有没有我没看到的错误?