2015-03-07 2 views
0

Скажем, у нас есть что-то вроде этого ...Добавление нескольких переключателей с использованием цикла?

JRadioButton jb1 = new JRadioButton(); 
JRadioButton jb2 = new JRadioButton(); 
JRadioButton jb3 = new JRadioButton(); 
JRadioButton jb4 = new JRadioButton(); 
JRadioButton jb5 = new JRadioButton(); 
JRadioButton jb6 = new JRadioButton(); 
JRadioButton jb7 = new JRadioButton(); 
JRadioButton jb8 = new JRadioButton(); 
JRadioButton jb9 = new JRadioButton(); 
JRadioButton jb10 = new JRadioButton(); 
JRadioButton jb11 = new JRadioButton(); 
JRadioButton jb12 = new JRadioButton(); 
JRadioButton jb13 = new JRadioButton(); 
JRadioButton jb14 = new JRadioButton(); 
JRadioButton jb15 = new JRadioButton(); 
JRadioButton jb16 = new JRadioButton(); 
JRadioButton jb17 = new JRadioButton(); 
JRadioButton jb18 = new JRadioButton(); 
JRadioButton jb19 = new JRadioButton(); 
JRadioButton jb20 = new JRadioButton(); 

Есть ли способ, чтобы добавить все эти радиокнопок с помощью петли вместо того, чтобы делать это по одной строке за раз, или еще более рациональный способ это просто петли неаккуратно.

Должно было немного понять, что я имел в виду, есть ли способ написать цикл, который добавит все эти кнопки в панель?

+0

Что мешает вам попробовать? –

+0

Может ли массив JRadioButton упростить вашу работу? – dasblinkenlight

+0

Этот вопрос не показывает никаких усилий. Это просто 'for', это основы Java! –

ответ

1

Это должно быть довольно легко:

JRadioButton[] buttons = new JRadioButton[20]; 
for (i = 0; i < buttons.length; i++) 
    buttons[i] = new JRadioButton(); 
1

Попробуйте использовать список и сделать что-то вроде:

List<JRadioButton> radioButtons = .. 
for (int i =0; i<....;i++) { 
    radioButtons.add(new JRadioButton()); 
} 

Вы можете сделать что-то вроде:

JRadioButton buttonAtSomeLocation = radioButtons.get(0);// by index 
0

Вы можете использовать (ПРИМЕР)

ArrayList<JRadioButton> myList = new ArrayList<>(); 

for(int i = 0; i < myList.size(); i++){ 
    myList.add(new JRadioButton()); 
} 
for(int i = 0; i < myList.size(); i++){ 
    myList.get(i).doSomethingInJRadioButtonMetohd..... 
} 
Смежные вопросы