Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.11.2018, 09:34   #1
Devust
 
Регистрация: 08.11.2018
Сообщений: 4
По умолчанию Выбор элемента списка

Здравствуйте, уважаемые программисты!!!

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

В ходе работы программы заполняется два массива.
Эти массивы отображаются в виде списков в listBox-е. Они между собой связаны иерархично. Подобно тому, как мы выбираем драйвера на сайте производителя:
Марка - модель - нужная ОС

Задача щёлкнуть по первому списку какой-то элемент, чтоб во втором отобразился список, соответствующий этому элементу первого списка.

Думаю, понятно.

Загвоздка вот в чём. Когда выбираю элемент из первого списка, который находится ниже, чем окно listbox-а, то этот элемент не становится активным, выбранным. Выбирается какой-то другой, любой, который лежит в рамках первого листбокса.

Однако, программа срабатывает верно. Т.е. во втором листбоксе появляются значения соответствующие элементу первого листбокса.

Может просто свойство есть какое-то соответствующее у этих листбоксов?

Работу смоделировал в тестовом файле.

Спасибо!
Вложения
Тип файла: zip test.zip (14.9 Кб, 13 просмотров)
Devust вне форума Ответить с цитированием
Старый 22.11.2018, 10:00   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

попробуйте исправленную форму: test2.xlsm.zip

суть исправления - Вы же по клику в левом ListBox ПОЛНОСТЬЮ стираете и первый и второй ListBox'ы и потом заполняете их с нуля.
но правый при этом заполняется тем значением, которое было выбрано в момент клика (передаётся в процедуру loading_lb( punkt)
а в левом всё пропадает/стирается.
я разделил loading_lb на два loading_lb1 - начальное заполнение,
loading_lb2 - заполняет только правый ListBox
Serge_Bliznykov вне форума Ответить с цитированием
Старый 22.11.2018, 11:29   #3
Devust
 
Регистрация: 08.11.2018
Сообщений: 4
По умолчанию

Да, действительно. Первый список же не меняется, его и не надо пересоставлять.
Спасибо за подсказку!
Ваш файл разобрал, всё понятно. Спасибо.
Devust вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
После каждого элемента списка добавьте ту часть списка, которая была перед ним - Pascal ABC Panchess Паскаль, Turbo Pascal, PascalABC.NET 6 10.04.2017 11:12
Удаление элемента списка Aerowalk Помощь студентам 1 08.10.2014 20:09
ComboBox AS3.0. Не реагирует на выбор элемента списка - Flex ArtemLushnikov Общие вопросы Web 1 03.06.2013 04:03
выбор элемента ZET78 JavaScript, Ajax 1 18.08.2010 07:18
Удаление последнего элемента из списка и реверс этого списка. Goose Общие вопросы C/C++ 8 16.05.2010 16:12