【问题标题】:can you change all this thing (JCheckBox) go to array and loop?你能改变所有这些东西(JCheckBox)去数组和循环吗?
【发布时间】:2014-08-21 23:51:50
【问题描述】:

我正在做一些 GUI,我使用 JCheckBox。我想知道这一切是否可以在数组和循环中完成?改变每一件事真是太累了。

如果你能帮助我,我很乐意听到。

if (box1.isSelected())
    k = 40;
if (box2.isSelected())
    l = 30;
if (box3.isSelected())
    m = 20;
if (box4.isSelected())
    n = 10;
if (box5.isSelected())
    o = 10;
if (box6.isSelected())
    p = 10;
if (box7.isSelected())
    q = 10;
if (box8.isSelected())
    r = 10;
if (box9.isSelected())
    j = 10;
if (box10.isSelected())
    i =10;

s = "Price for this is RM" + 
        (k + l + m + n + o + p + q + r + j + i);

JOptionPane.showMessageDialog(null, s);

【问题讨论】:

  • 实际上你需要一个array 一个loop。创建您的 JCheckBox 对象数组并计算通过此数组的总迭代次数。
  • 如何创建数组并循环到 JCheckBox ?
  • 你知道如何创建 any Java 数组吗?
  • 如果正常我知道类似 int[] num = new num[10];
  • 好。 JCheckBox num = new JCheckBox[10];没区别

标签: java swing user-interface joptionpane jcheckbox


【解决方案1】:

你可能想要的是这个:

JCheckBox[] checkboxesArray = new JCheckBox[10];
int i, count;

for (i=0; i<10; i++){
    /* display a checkbox... */

/* Finished displaying checkboxes, now you wait for user to finish input... */

for (i=0; i<10; i++){
    if (checkboxesArray[i].isSelected())
        count += 10;
}
s = "Price for this is RM " + count;
JOptionPane.showMessageDialog(null, s);

【讨论】:

  • 每个盒子的输入?我需要放在哪里?
  • @LukmanAlHakim:您应该在我放置第一个for 循环的位置显示复选框,请参阅 cmets。您可以将它们引用为 checkboxesArray[i]。然后你可以有一个类似按钮的东西,当点击它时,它会调用其余的代码。在文档中查找都很容易。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-09-24
  • 1970-01-01
  • 2010-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多