ListBox

Программирование на Visual Basic for Applications
bs
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 115
Зарегистрирован: 31.01.2002 (Чт) 13:47
Откуда: Russia

ListBox

Сообщение bs » 24.03.2003 (Пн) 16:36

У меня проблема:
в ВБ есть тул Список
там все понятно...
я использую аналогичный (стандартный) тул списка в VBA
Проблема в том, что я не нашел там свойства RemoveItem

Как быть?

Как удалить заданный элемент списка в VBA?

Заранее спасибо!

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 24.03.2003 (Пн) 16:41

или выражайся правильней или ........... в listbox'e есть метод RemoveItem смотри внимательней :)

bs
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 115
Зарегистрирован: 31.01.2002 (Чт) 13:47
Откуда: Russia

Сообщение bs » 28.03.2003 (Пт) 18:07

Ну не знаю...
Может я действительно не рпавильно выражаюсь.
Тогда опичываю проблему подробнее:
В Accesse в режиме конструктора формы я использую (размещаю на форме) стандартный элемент - Список. Ну, допустим, называю его lstList.

Затем в программе (в VBA) обращаюсь к этому элементу Спикок.
печатаю:
lslList.
Ну как обычно после того, как я ставлю точку, у меня выскакивает список-подсказка свойств и методов...
Так вот ТАМ НЕТ МЕТОДА REMOVEITEM!!!
Я пробовал под 2000 и под XP!!!
может, я че не понял...
нет его там...

Вопрос: Как удалить заданный элемент списка из Списка в VBA?

Calvin
Постоялец
Постоялец
 
Сообщения: 409
Зарегистрирован: 21.01.2003 (Вт) 12:13
Откуда: Sebastopol

Сообщение Calvin » 28.03.2003 (Пт) 19:09

2 bs: может ты не тот элемент управления по ошибке выбрал (проверь), т.к. у ListBox есть свойство "ремувитем" - corgi безусловно прав
ЗЫ попробуй на всякий случай все равно после ListBox.... поставить этот метод, вдруг он у тебя неявным образом вызывается

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 28.03.2003 (Пт) 19:15

В Access действительно нет этого свойства, но список обычно цепляется либо к таблице, либо к списку значений во втором случаи в свойстве .RowSource через точку с запятой в текстовом формате записан список значений. Вы его можете изменить во время выполнения программы, но после ее остановки список примет начальные значения.
В первом случаи список изменится, если вы удалите запись таблицы программно на которую он ссылается.

Я попытался установить на форму ListBox из дополнительных элементов, но, к сожалению и он был с обрезанными свойствами, вообще элемент встал как то криво.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 29.03.2003 (Сб) 9:20

Ну так и правильно всё, не нужно позволять удалять вручную элементы из аксессовского листбокса, это может потянуть великие глюки и непредсказуемые изменения, одно каскадное удаление чего стоит. Если же нужно ограничить набор элементов в списке, то делается это через SQL в проперти RowSource.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

bs
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 115
Зарегистрирован: 31.01.2002 (Чт) 13:47
Откуда: Russia

Сообщение bs » 01.04.2003 (Вт) 16:39

Но мне нужен список выбранных пользователем файлов, а не список значений поля базы данных...
А пользователь должен иметь возможность удалить из списка выбранный им пункт...
Как я понимаю, здесь нужно действовать через RowSource и перебирать каждый раз все элементы списка вручную...
Через задницу это как-то...
Нет ли каких других вариантов ?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 01.04.2003 (Вт) 16:44

Есть конечно ;) Используй контрол ListView ;)

Colonel
Обычный пользователь
Обычный пользователь
 
Сообщения: 63
Зарегистрирован: 15.11.2002 (Пт) 12:39
Откуда: Russia

Сообщение Colonel » 02.04.2003 (Ср) 10:29

bs писал(а):Но мне нужен список выбранных пользователем файлов, а не список значений поля базы данных...
А пользователь должен иметь возможность удалить из списка выбранный им пункт...
Как я понимаю, здесь нужно действовать через RowSource и перебирать каждый раз все элементы списка вручную...
Через задницу это как-то...
Нет ли каких других вариантов ?

В Access вообще по дурному сделана работа со списками - нет гибкости. С какой это стати я должен ограничиваться только данными из привязанной таблицы или запроса? Одна радость, что хоть ListView можно зацепить и использовать :)


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 12

    TopList