powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Compile error: procedure too large-как с ним бороться?
6 сообщений из 6, страница 1 из 1
Compile error: procedure too large-как с ним бороться?
    #33509357
Simon666
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я делаю Электронный словарь кроссвордиста. Т. е. при вводе вопроса и кол-ва
букв в textBox и последующем нажатии на кнопку Спросить в listBox выводятся
ответы.
Вот мой код:

'cmdGo-кнопка "Спросить"
'txtanswer-поле для ввода вопроса
'txtcross-поле для ввода кол-ва букв
'lstcross-лист вывода ответов
Private Sub cmdGO_Click()
If txtANSWER.Text = "Абразивный материал" Then
If txtCROSS.Text = "5" Then
lstCROSS.AddItem "Алмаз-самый крепкий"
lstCROSS.AddItem "Кварц"
lstCROSS.AddItem "Пемза"
ElseIf txtCROSS.Text = "6" Then
lstCROSS.AddItem "Гранат"
lstCROSS.AddItem "Корунд"
lstCROSS.AddItem "Наждак"
ElseIf txtCROSS.Text = "7" Then
lstCROSS.AddItem "Боразон-искуственный"
lstCROSS.AddItem "Кремень"
ElseIf txtCROSS.Text = "9" Then
lstCROSS.AddItem "Карборунд-искуственный"
ElseIf txtCROSS.Text = "11" Then
lstCROSS.AddItem "Карбокорунд-искуственный"
ElseIf txtCROSS.Text = "13" Then
lstCROSS.AddItem "Электрокорунд-искуственный"
End If
End If

и так следующий вопрос....

Все хорошо. Но беда в том, что при следующем обновлении словаря (кот. включал в себя уже более 70 пунктов)
и вводе вопроса в программу Basic мне выдает такую ошибку: "Compile error: procedure too large"
Я врубился, что, типа, код слишком длинный. Подскажите плиз, как избежать этой ошибки, и
продолжать дополнять словарь?
...
Рейтинг: 0 / 0
Compile error: procedure too large-как с ним бороться?
    #33509785
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почему бы не использовать базу данных в этом случае?
бороться с procedure too large не стоит не поможет
...
Рейтинг: 0 / 0
Compile error: procedure too large-как с ним бороться?
    #33509813
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а если не хочется базы использовать, то раздели условия на несколько процедур и обедени в событие клик
Private Sub U1()
условия
end Sub

Private Sub U2()
условия
end Sub

Private Sub cmbGo_Click()
U1:U2 итд
end sub
...
Рейтинг: 0 / 0
Compile error: procedure too large-как с ним бороться?
    #33509893
Андрей Il
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если так:

If txtANSWER.Text = "Абразивный материал" Then
Select Case txtCROSS.Text
Case "5"
lstCROSS.AddItem "Алмаз-самый крепкий"
lstCROSS.AddItem "Кварц"
lstCROSS.AddItem "Пемза"
Case "6"
lstCROSS.AddItem "Гранат"
lstCROSS.AddItem "Корунд"
lstCROSS.AddItem "Наждак"
Case "7"
lstCROSS.AddItem "Боразон-искуственный"
lstCROSS.AddItem "Кремень"
Case "9"
lstCROSS.AddItem "Карборунд-искуственный"
Case "11"
lstCROSS.AddItem "Карбокорунд-искуственный"
Case "13"
lstCROSS.AddItem "Электрокорунд-искуственный"
End Select
End If
...
Рейтинг: 0 / 0
Compile error: procedure too large-как с ним бороться?
    #33509944
Melkiades
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Андрей II: а что это меняет?
Однозначно использовать БД.
...
Рейтинг: 0 / 0
Compile error: procedure too large-как с ним бороться?
    #33510239
Андрей Il
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To Melkiades:
>Однозначно использовать БД.

Полностью согласен. Пример выложил для Simon666, а то в куче If можно быстро заблудиться.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Compile error: procedure too large-как с ним бороться?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]