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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.02.2014, 12:20   #1
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию Too many local constants. Use shorter procedures

Код:
[Error] Unit1.pas(6209): Too many local constants.  Use shorter procedures
Вот такая проблема, а строк должно быть еще где-то 3000-4000... и как тут быть? как решить проблему?

очень много пунктов в Combobox... добавляю я их естественно таким образом:
Код:
ComboBox1.Items.Add('блаблабла');
и вот их такое количество такое большое...
FleXik вне форума Ответить с цитированием
Старый 11.02.2014, 12:26   #2
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

что это за данные?

может их в БД закинуть и придумать способ по проще?
ZuBy вне форума Ответить с цитированием
Старый 11.02.2014, 12:41   #3
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Delphi ругается даже не на данные, а на их количество. У всего есть предел.
Кстати зачем столько строк в 1 ComboBox, да ещё программно?
Для больших объёмов данных лучше, как Вам посоветовал, ZuBy, использовать БД. Они гораздо лучше для этого приспособлены.
Streletz вне форума Ответить с цитированием
Старый 11.02.2014, 13:09   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

1)а с файла не загрузить?
2)в диспетчере объектов не забить?
3)на несколько процедур можно поделить.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.02.2014, 13:16   #5
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
1)а с файла не загрузить?
2)в диспетчере объектов не забить?
3)на несколько процедур можно поделить.
первый пункт отпадает, у меня при выборе одного Combobox во второй Combobox добавляются пункты (Items) и их порядка 4000-5000

Код:
if ComboBox1.ItemIndex=1 then
begin
ComboBox2.Clear;
ComboBox2.Items.Add('Один');
ComboBox2.Items.Add('Два');
ComboBox2.Items.Add('Три');
end;

if ComboBox1.ItemIndex=2 then
begin
ComboBox2.Clear;
ComboBox2.Items.Add('Четыре');
ComboBox2.Items.Add('Пять');
end;

if ComboBox1.ItemIndex=3 then
begin
ComboBox2.Clear;
ComboBox2.Items.Add('Шесть');
ComboBox2.Items.Add('Семь');
ComboBox2.Items.Add('Восемь');
ComboBox2.Items.Add('Девять');
ComboBox2.Items.Add('Десять');
end;
есть ли способ сделать так же как я дал пример выше но с меньшим количеством строк? или как-то сделать чтобы эта ошибка не вылезала...
FleXik вне форума Ответить с цитированием
Старый 11.02.2014, 13:19   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
первый пункт отпадает
Почему? В файле, например, указывать типа такого:
Код:
[Пункт1]
Тра-ля-ля-1
Тра-ля-ля-2
...
[Пункт18]
Тра-ля-ля-1
Тра-ля-ля-2
...
и выбирай на здоровье
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 11.02.2014, 13:20   #7
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Аватар, пункты принципиально должны быть вшиты в софт

в принципе БД подойдет, но я не умею с ней работать.

Код:
Ну тогда принципиально мучайся
я последние 3 дня с этими комбобоксами то и делаю что мучаюсь

Последний раз редактировалось FleXik; 11.02.2014 в 13:26.
FleXik вне форума Ответить с цитированием
Старый 11.02.2014, 13:23   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
принципиально
Ну тогда принципиально мучайся
Цитата:
в принципе БД подойдет, но я не умею с ней работать.
А как же принципиальность вшития в софт?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 11.02.2014 в 13:25.
Аватар вне форума Ответить с цитированием
Старый 11.02.2014, 13:27   #9
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
А как же принципиальность вшития в софт?
а БД что, дополнительным файлом идет? я просто никогда с БД не работал...
FleXik вне форума Ответить с цитированием
Старый 11.02.2014, 13:30   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Дополнительным файлом все. Для многих (которые чуть покруче dbf) еще свой софт ставить
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
thread-local storage 220Volt Общие вопросы C/C++ 4 13.08.2013 20:12
Delphi7 создание формы Runtime, constants cannot be used as open array arguments BoozZzilla Помощь студентам 2 29.03.2011 17:27
LIC (Local Instant Chat) dani92 Софт 5 21.11.2009 16:57