作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的程序的片段代码,它将模拟太阳系。根据用户在“amountField”中写入的内容,行星的“数量”将会改变,组合框“listOfPlanet”也会改变。这是我的问题。我找到了如何“调整”组合框的大小,但我不知道如何使大小写“X”依赖于“Number”。如你所见,我必须手动编写 12 个案例。
amountField = new JTextField(6);
ActionListener amountListener = new ActionListener() {
public void actionPerformed(ActionEvent e) {
String amountData = amountField.getText();
Number = Integer.parseInt(amountData);
listOfPlanet.removeAllItems();
for(int i = 0; i<Number; i++) {
listOfPlanet.addItem("Planeta" + i);
}
b = new Ball(leftMainPanel);
}
};
amountField.addActionListener(amountListener);
rightUpPanel.add(amountField);
listOfPlanet = new JComboBox();
for(int i = 0; i<Number; i++) {
listOfPlanet.addItem("Planeta" + i);
}
ActionListener ComboListener = new ActionListener() {
public void actionPerformed(ActionEvent e) {
int temp;
temp = listOfPlanet.getSelectedIndex();
switch(temp){
case 0:
iii=0;
break;
case 1:
iii=1;
break;
case 2:
iii=2;
break;
case 3:
iii=3;
break;
case 4:
iii=4;
break;
case 5:
iii=5;
break;
case 6:
iii=6;
break;
case 7:
iii=7;
break;
case 8:
iii=8;
break;
case 9:
iii=9;
break;
case 10:
iii=10;
break;
case 11:
iii=11;
break;
case 12:
iii=12;
break;
}
}
};
listOfPlanet.addActionListener(ComboListener);
有什么办法可以让它像这样工作吗? :
for(int i=0; i<Number; i++) {
case i:
iii=i;
break;
}
最佳答案
iii = listOfPlanet.getSelectedIndex();
这不行吗?您应该得到 iii = 从下拉框中选择的行星的索引。
关于java - 如何将 "case"放入循环中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23942382/
我是一名优秀的程序员,十分优秀!