Очевидно же, что в списках находятся какие-то модели аппаратуры, а в коде определяются группы выбранной аппаратуры.
Вариант 1 - можно сделать всё "красиво", месяц объяснять, как это будет работать.
2 - Можно поставить бряку, как я написал выше (только не на 65 строке, а в той, что выдает ошибку), увидеть причину ошибки и исправить (две минуты). А через пару лет автор сам допетрит до первого варианта.
Автор всё-таки спрашивал, где ошибка в коде, а не в архитектуре, верно?
Требуется уточнение. Закомментированое не работает? Выделенное не работает? Не работает то, что добавляете после выделенного? А что добавляется после выделенного?
Если не работает выделенное, то пуст четвертый список.
"когда выбираем только чеклистбокс 6, то только тогда и выходит эта преславутая ошибка.странно."
Для того, чтобы проверить условие, не обязательно проверять все его операнды. Так и ведет себя компилятор по-умолчанию.
Например, "A or B": если А = True, зачем проверять условие B?
Почитайте про Short-Circuit Boolean Evaluation, попробуйте поставить опцию компилятора в настройках проекта Complete Boolean Eval, посмотрите, как изменится поведение ошибки.
|