Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > размеры data и combobox


Автор: Гость_гость 11.3.2005, 14:43
есть проект в котором при загрузке в combobox из data вставляется 97000 элементов.
при переносе на ноутбук - возникает ошибка после добавления 32736 элементов.
Может кто-то сталкивался?

Автор: Naghual 11.3.2005, 15:51
Я с таким не сталкивался.
Но ты представь! 97000 элементов! Ты себе представляеш как пользователь их будет выбирать?
Ты что-нибудь про понятие "дружественный интерфейс" слышал? Бо у тебя он явне не дружественный получается.
Может стоит подумать о фильтрации данных? Или еще что придумать.

Автор: Akina 11.3.2005, 16:34
Цитата
при переносе на ноутбук - возникает ошибка после добавления 32736 элементов.

Поставь ту же версию и пак Винды, Офиса...

Автор: Exception 11.3.2005, 19:45
В combobox'е недопустимо использование более 32768 элементов. Используй ActiveX smile

Автор: Guest 14.3.2005, 17:59
Цитата(Naghual @ 11.3.2005, 15:51)
Я с таким не сталкивался.
Но ты представь! 97000 элементов! Ты себе представляеш как пользователь их будет выбирать?
Ты что-нибудь про понятие "дружественный интерфейс" слышал? Бо у тебя он явне не дружественный получается.
Может стоит подумать о фильтрации данных? Или еще что придумать.

хм.. поверь борьба за "дружественный интерфейс" мое обыденное состояние, но слышал ли ты слово "НАДО". Тут я лично бессилен.

Автор: Guest 14.3.2005, 18:01
Цитата(Akina @ 11.3.2005, 16:34)
Цитата
при переносе на ноутбук - возникает ошибка после добавления 32736 элементов.

Поставь ту же версию и пак Винды, Офиса...

я бы с удовольствием, но это решение не подходит.

Автор: Guest 14.3.2005, 18:02
Цитата(Run @ 11.3.2005, 19:45)
В combobox'е недопустимо использование более 32768 элементов. Используй ActiveX smile

как это не допустимо, если на моем компе они все влязят?

Автор: Guest 14.3.2005, 18:04
вообще, это все необходимо для подсветки, но если ее использовать динамичски подгружая данные по мере ввода, то будет жутко тормозить, а так тормозит 1 раз при загрузке.. правда тормозит жутчайше....

Автор: Naghual 14.3.2005, 19:23
Ну раз НАДО...
Хотя страшно!

Автор: Exception 15.3.2005, 15:49
Цитата(Guest @ 14.3.2005, 19:02)
как это не допустимо, если на моем компе они все влязят?

Ты считал? smile smile smile
Я не уверен, но ActiveX все равно советую использовать. У меня один компонент валялся, так он как раз до хрена может вмещать вроде ~2 000 000 smile

Автор: Exception 15.3.2005, 16:21
А зачем надо, скажи если не секрет smile
ЗЫ зарегился бы smile

Автор: SergeyD 21.4.2006, 16:35
У меня тоже надо работать с большим числом элементов. Интерфейс достаточно дружественный - в ComboBox все находит по посимвольному вводу (поиск товара и выбор нужного при наборе начальных букв наименования, затем выбор конкретного уже из списка). Проблема возникает, когда я начинаю что-то делать с выбранной строкой и пытаюсь прочитать ее индекс - он отрицательный.

В ComboBox "product" занесено более 32767 строк (занесены и каждую можно увидеть). Занесение проводится путем добавления и никаких ошибок не возникает. Однако при выполнении операции 

plu.ListIndex = product.ListIndex

с записями с номерами более 32767 возникает ошибка. Значение  product.ListIndex становится отрицательным - видимо из за того, что индекс - integer. Можно ли как то сделать этот индекс Long?

Написал это сообщение в другой теме, но потом понял, что эта тема подходит больше - извините...

А как то же самое сделать с ActiveX? 

Автор: Naghual 25.4.2006, 10:19
Написать свой собственный ActiveX с индексом типа Long 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)