Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 21.10.2018
Сообщений: 1

Удаление элементов JComboBox

21.10.2018, 08:55. Показов 1139. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток! Столкнулся со следующей проблемой: есть у меня JComboBox, состоящий из 5 эементов. Если я пытаюсь удалить элемент с индексом '1', то все ОК. А если пытаюсь удалить с индексом '2' и более, то выдает ошибку: Array index out of range: 2. Помогите пожалуйста, как исправить проблему?

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
JComboBox delBox = new JComboBox();
 
String ar[] = new String[muchPairs + 1];
 
        ar[0] = "нет";
 
        for(int i = 1; i <= muchPairs; i++) ar[i] = "Пара" + String.valueOf(i);
 
        JComboBox x = new JComboBox(ar);
        x.setBounds(delBox.getX(), delBox.getY(), delBox.getWidth(), delBox.getHeight());
 
        delBox = x;
 
// При нажатии на кнопку "удалить" происходит следующее:
 
int n = delBox.getSelectedIndex();
                    System.out.println(n);
                    System.out.println(delBox.getItemCount());
                    List <myEditAr> nPairs = new ArrayList<myEditAr>();
 
                    for(int i = 0; i < muchPairs; i++) {
                        pairs.get(i).setVisible(false);
 
                        if(i != n -1 ) {
                            nPairs.add(pairs.get(i));
                        }
 
                    }
                    pairs = nPairs;
 
                    int a, g;
 
                    for(int i = 0; i < muchPairs - 1; i++) {
                        a = 0;
                        g = i;
                        if(i > 6) {
                            a = 1;
                            g -= 7;
                         //   System.out.println(a + "   " + g);
                        }
 
                        pairs.get(i).renum(i+1);
                        pairs.get(i).setPosition(5 + 270*a, 80 + g*70);
                        pairs.get(i).setVisible(true);
                    }
 
                    muchPairs--;
                    if(muchPairs < 0) muchPairs = 0;
 
                    delBox.remove(n);   // ошибка происходит в этой строке
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.10.2018, 08:55
Ответы с готовыми решениями:

JComboBox (поиск в нем элементов)
Добрый день! Подскажите, как сделать редактируемый jComboBox? jComboBox.setEditable(true); позволяет редактировать, но нужно какое то...

JComboBox: не удается выбрать больше 5 элементов с клавиатуры
Здравствуйте, имеется вот такая вот проблема. Написал код выпадающего списка из ComboBox. KeyListener listener = new KeyListener() { ...

Создание программы со своей библиотекой ( удаление элементов с N по M в строке и удаление лишних пробелов(если 2 и более оставить один))
добрый день. помогите, пожалуйста понять мои ошибки в работе. Мне нужно написать программу со своей библиотекой, которая включает в себя...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.10.2018, 08:55
Помогаю со студенческими работами здесь

Добавление элементов к дереву, удаление элементов и поиск уровня с наибольшей суммой элементов
Помогите пожалуйста! нужно разработать программу для работы с деревом. В узлах дерева содержатся символы. Дерево должно быть...

JComboBox
такой вопрос. можно ли результат запроса на выборку из таблици из БД записать у JComboBox ? чтобы можно было выбирать из одной таблици...

JComboBox
помогите с jcombobox разобраться.На примитивном уровне. Вот выбираем число Два из одного списка, число Три из другого списка. Ответ: 5 ...

JComboBox
Выполняю задание по книжке : 1. Создайте Swing-приложение для размещения заказов на покупку велосипедов. Оно должно содержать два...

ListCellRenderer for JComboBox
Здравствуйте! Столкнулся с необходимостью сделать JComboBox, в котором вместо строк некоторые цвета. Написал рендерер, но при выборе...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru