2017-05-29 75 views
-3

比方说,我们有3个Jbutton将(或其他对象):如何用一个整数引用JButton?

JButton button1 = new JButton() , button2 = new JButton(), button3 = new JButton(); 

现在,让我们说,因为一些功能的结果,我们必须从1到3的整数是否有可能,例如,来决定根据给定的整数操作哪个按钮。所以,如果我想出3号,选择这样的button3:

button(3).setIcon(etc..); 
+0

标题说的字符串,后缀表示整数。你需要哪些?你的代码示例尖叫数组/列表。 –

+0

您需要在某处存储对按钮的引用,例如在'List'或'Map ' – syntagma

+0

声音就像你想把你的按钮放在一个数组中。 – khelwood

回答

0

了解阵列。

JButton buttons[]=new JButton[3]; 
for(int i=0;i<buttons.length;i++) 
    buttons[i]=new JButton 

然后是你写的,只是用支架,像buttons[3].setIcon(...)

如果你不知道的按钮数量请先用一个列表,像ArrayList<JButton>,它有add('some JButton')get('a number')方法,许多其他。

0

你可以考虑把它们放在list以正确的顺序......那么你可以根据插入顺序做

myList.get(0)myList.get(1)myList.get(2)

List<JButton> myList = .... 
myList.add(new JButton()); 
myList.add(new JButton()); 
myList.add(new JButton()); 
0

您可以使用数组JButton满足您的给定尺寸的要求。

JButton buttons[]=new JButton[3]; 
for(int i=0;i<buttons.length;i++) 
    buttons[i]=new JButton(); 

在方法中使用

public void setIcon(int number){ 

    button[number].setIcon(etc..); 
} 

ArrayList是一个选项,在Java中提供动态数组,但如果动态列表是不是你要求使用阵列也因为ArrayList比数组慢。