Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java GUI
Войти
Регистрация
Восстановить пароль
 
VlGuvin
0 / 0 / 4
Регистрация: 04.08.2015
Сообщений: 225
1

Как разместить в JComboBox список (матрицу) строк

23.03.2017, 22:17. Просмотров 300. Ответов 5
Метки нет (Все метки)

Имеется JComboBox
Java
1
2
3
4
...
String [] test = {"1234", "abcd"};
JComboBox jComboBox1 = new JComboBox(test);
...
После операции определения Ethernet адаптера имеется список в виде матрицы строк test[] со списком адаптеров на компе
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
...
        try {
            // Will be filled with NICs
            List alldevs = new ArrayList();
            // For any error msgs
            StringBuilder errbuf = new StringBuilder();
            //Getting a list of devices
            int r = Pcap.findAllDevs(alldevs, errbuf);
            System.out.println(r);
            if (r != Pcap.OK) {
                System.err.printf("Can't read list of devices, error is %s", errbuf
                        .toString());
                return;
            }
            
            System.out.println("Network devices found:");
            int i = 0;
            for (Iterator it = alldevs.iterator(); it.hasNext();) {
                PcapIf device = (PcapIf) it.next();
                String description =
                        (device.getDescription() != null) ? device.getDescription()
                        : "No description available";
                test[i] = description;
                System.out.printf("#%d: %s [%s]\n", i++, device.getName(), description);
            }
Как теперь этот список можно записать поверх инициализированного (заменить) для выбора в jComboBox1
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.03.2017, 22:17
Ответы с готовыми решениями:

JComboBox обновлять список при разворачивании
Есть JComboBox, который отображает список файлов из папки. Содержимое папки...

Как добавить в JComboBox класс
Как добавить в JComboBox класс,например public class Test{ String...

Как прописать кнопку в JComboBox
Ребят,подскажите,пожалуйста,как в выпадающем списке JComboBox,а точнее в его...

Как сделать многовыборочный JCombobox
Здраствуйте, не могу найти решения. Можно ли сделать, чтобы c jcombobox...

Как получить значение JComboBox?
У меня есть таблица (JTable) и JComboBox. Когда я перехожу с одной строки...

5
korvin_
2169 / 1662 / 320
Регистрация: 28.04.2012
Сообщений: 5,928
23.03.2017, 22:36 2
Цитата Сообщение от VlGuvin Посмотреть сообщение
список в виде матрицы строк test[]
Матрица — это прямоугольная таблица, а не список.
test[] — это не матрица, а массив.

Цитата Сообщение от VlGuvin Посмотреть сообщение
Как теперь этот список можно записать поверх инициализированного (заменить) для выбора в jComboBox1
Использовать ComboBoxModel.
0
VlGuvin
0 / 0 / 4
Регистрация: 04.08.2015
Сообщений: 225
23.03.2017, 23:33  [ТС] 3
Спасибо. Смысл понятен. Но технологию не понял. Сделал так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
...
    class MyComboBoxModel extends AbstractListModel implements ComboBoxModel {
      String [] test = {"1234", "abcd"};
      String selection = null;
 
        @Override
      public Object getElementAt(int index) {
        return test[index];
      }
 
        @Override
      public int getSize() {
        return test.length;
      }
 
        @Override
      public void setSelectedItem(Object anItem) {
        selection = (String) anItem; // to select and register an
      } // item from the pull-down list
 
      // Methods implemented from the interface ComboBoxModel
        @Override
      public Object getSelectedItem() {
        return selection; // to add the selection to the combo box
      }
    }    
 
....
JComboBox jComboBox1 = new JComboBox(new MyComboBoxModel());
....
После определения списка адаптеров в test[] будет собственно их список (массив).
Не врубаюсь как этот список разместить в jComboBox1
Метод
Java
1
jComboBox1.setSelectedItem(test[i]);
ничего не меняет в списке jComboBox1
0
korvin_
2169 / 1662 / 320
Регистрация: 28.04.2012
Сообщений: 5,928
24.03.2017, 08:49 4
Цитата Сообщение от VlGuvin Посмотреть сообщение
Не врубаюсь как этот список разместить в jComboBox1
Я же сказал: использовать ComboBoxModel. Вот есть у тебя твой MyComboBoxModel, в нём и размещай, что непонятно?

Цитата Сообщение от VlGuvin Посмотреть сообщение
Метод setSelectedItem ничего не меняет в списке jComboBox1
А что он по-твоему должен поменять? Или даже так: что этот метод по-твоему делает?
1
VlGuvin
0 / 0 / 4
Регистрация: 04.08.2015
Сообщений: 225
24.03.2017, 17:10  [ТС] 5
Все получилось. Спасибо.
0
Alradalion
118 / 116 / 80
Регистрация: 13.09.2013
Сообщений: 437
24.03.2017, 19:45 6
А можно было проще:
Java
1
comboBox.setModel(new DefaultComboBoxModel(new String[] { "Mercedes", "BMW", "Audi", "Toyota", "Mitsubishi", "Opel", "Honda" }));
0
24.03.2017, 19:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.03.2017, 19:45

Как отловить выбор значения в JComboBox?
Помогите разобраться с JCOMBOBOX. Есть два combobox. Когда пользователь...

Как изменить выбранный элемент в JComboBox?
В DefaultListModel есть setElementAt и все прекрасно, как изменить элемент по...

Как заставить JComboBox писать по-русски?
Прошу помочь. Хотелось бы в календаре видеть список месяцев на русском: final...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru