当前位置: 首页 > 知识库问答 >
问题:

如何在整数更改后仍使用整数的前一个值

娄利
2023-03-14

我是编程新手,目前使用JavaFX作为个人组织工具。我在这里展示了一个按钮(称为book)和阶段(称为bookStages)的数组列表,一个名为addBook的VBox,以及一个名为bookButtonCount的Int设置为0。

addBook.setOnAction(new EventHandler<ActionEvent>() {
@Override
    public void handle(ActionEvent t) {
        addBooks.getChildren().add(books.get(bookButtonCount));

        books.get(bookButtonCount).setOnAction(new EventHandler<ActionEvent>() {
           @Override
              public void handle(ActionEvent t) {
                 bookStages.get(bookButtonCount).show();
                 System.out.println(bookButtonCount);
              }
        });
        bookButtonCount++;
   }
});

第一个按钮将“书籍”数组列表中的一个按钮添加到VBox。vbox中的按钮应该从舞台数组列表中打开一个阶段。您应该能够多次触发该按钮,每次向vbox添加一个新按钮并将该按钮设置为打开自己的阶段。尽管使用bookButtonCount作为参考似乎不起作用,因为每次您按下vbox中书籍数组列表中的按钮时,它都会检查bookButtonCount的当前值。(随着添加更多按钮而改变)并打开错误的阶段。

是否有任何方法可以将按钮的操作保存为仅设置时bookButtonCount的值?

如果没有,我应该如何设置?以下是可能有用的更多代码位:

ArrayList<Stage> bookStages = new ArrayList();
ArrayList<Button> books = new ArrayList();
   for (int i=0;i<10;i++){
     books.add(new Button("Book " + (i+1)));
     bookStages.add(new Stage());
     bookStages.get(i).setTitle("Book " + (i+1));
   }

共有1个答案

郭乐湛
2023-03-14

创建按钮和阶段时只需注册处理程序:

ArrayList<Stage> bookStages = new ArrayList();
ArrayList<Button> books = new ArrayList();
for (int i=0;i<10;i++){
    Button button = new Button("Book " + (i+1));
    books.add(button);
    Stage stage = new Stage();
    bookStages.add(stage);
    stage.setTitle("Book " + (i+1));
    button.setOnAction(e -> stage.show());
}

addBook.setOnAction(e -> {
    addBooks.getChildren().add(books.get(bookButtonCount));
    bookButtonCount++ ;
});
 类似资料:
  • 问题内容: 我有一个充满随机内容项ID的数组。我需要运行mysql查询(数组中的ID在WHERE子句中),并使用数组中的每个ID并按照它们在所述数组中出现的顺序进行操作。我该怎么做? 对于数组中的每个ID,这将是一个UPDATE查询。 问题答案: 与几乎所有“如何在PHP中执行SQL”问题一样,您 实际上 应该使用准备好的语句。这并不难: 或者,您可以这样做: 根据需要为其他字段添加更多参数占位符

  • 如何将JComboBox项更改为整数 这是我如何使JComboBox和它是不可编辑的,我如何编辑它?

  • 问题内容: 我们以前的程序员在表(Mysql)中设置了错误的排序规则。他使用拉丁文归类(应为UTF8)进行设置,现在我遇到了问题。每个带有中文和日文字符的记录都变成??? 字符。 是否可以更改排序规则并找回角色的细节? 问题答案: 更改数据库排序规则: 更改表排序规则: 更改列排序规则: 更多信息: utf8_general_ci和utf8_unicode_ci之间的区别是什么? utf8_gen

  • 以下是错误代码: 有谁能帮我解决我的问题吗?

  • 问题内容: 在另一个Bruce Eckels演习中,计算速度,其中s和t是整数。我如何做到这一点,以便该部门提高浮力? 问题答案: 只需先将两个操作数之一转换为浮点数即可。 演员表的优先级高于分区,因此发生在分区之前。 另一个操作数将由编译器自动有效地强制转换为浮点数,因为规则指出,如果另一个操作数为浮点型,则即使另一个操作数是整数,该操作也将是浮点运算。

  • 问题内容: 我很难解决这个问题的解决方案。我正在尝试用Java开发一个程序,该程序需要一个数字,例如321,并找到数字的总和,在这种情况下为3 + 2 + 1 =6。我需要任何三个数字的所有数字将它们加在一起,并使用%剩余符号存储该值。这让我感到困惑,我想感谢任何人的想法。 问题答案: 输出量