Огромная процедура (Ну или комп загнулся)

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Огромная процедура (Ну или комп загнулся)

Сообщение Ramzes » 23.08.2003 (Сб) 0:10

Помогите, кто чем может...
Код: Выделить всё
If Number.Caption = "1" Then
Open App.Path & "\data\klips\adress\1.txt" For Input As #1
Do Until EOF(1)
Line Input #1, txt
adrtxt = adrtxt + txt
Loop
Close #1
Adresstxt.Text = adrtxt
Open App.Path & "\data\klips\name1.txt" For Input As #2
Do Until EOF(2)
Line Input #2, txt
namtxt = Nametxt + txt
Loop
Close #2
Nametxt.Text = namtxt
End If
[list]
и так 200 раз, и в результате ошибка, что делать???[/list]

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 23.08.2003 (Сб) 0:15

Видимость процедуры - Private
Ошибка - Слишком большая процедура

Urvin
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 518
Зарегистрирован: 04.06.2003 (Ср) 10:47
Откуда: с Марса

Сообщение Urvin » 23.08.2003 (Сб) 1:17

а почему бы не заменять символы vbCrLf на "" (ничего)? и так 200 раз?
Не так страшен русский танк, как его пьяный экипаж

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 23.08.2003 (Сб) 10:05

А где ты там нашел VBCrLf? Ты что вообще код не читаешь, и дело то совсем не в этом, прочитай тему внимательно :x :!: :!: :!:

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 23.08.2003 (Сб) 12:51

Попробуй разбить на несколько, например:

Код: Выделить всё
Private Sub N1()
If Number.Caption = "1" Then
Open App.Path & "\data\klips\adress\1.txt" For Input As #1
Do Until EOF(1)
Line Input #1, txt
adrtxt = adrtxt + txt
Loop
Close #1
Adresstxt.Text = adrtxt
N2
End Sub

Private Sub N2()
Open App.Path & "\data\klips\name1.txt" For Input As #2
Do Until EOF(2)
Line Input #2, txt
namtxt = Nametxt + txt
Loop
Close #2
Nametxt.Text = namtxt
End If
N3
End Sub

Private Sub N3
...
N4
End Sub

...
Нет меня больше

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 25.08.2003 (Пн) 11:38

Я попробывал, но,... Во-первых- такие дела мне не подходят, а вовторых, дальше тоже самое...

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

Сообщение RayShade » 25.08.2003 (Пн) 11:52

1) Читаем Q129897

Там написано почему :)



2) В принципе там же предложен и способ разбиения процедуры на куски поменьше. Если это не подходит, то вообще то положено пользоваться циклами...

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 26.08.2003 (Вт) 13:39

Всем Спасибо, решением моей проблемы была переустановка Windows XP на Старушку 98, так - что теперь работает, и кроме всего прочего, разбил процедуру на 5 частей.


Вернуться в Visual Basic 1–6

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

Сейчас этот форум просматривают: AhrefsBot, SemrushBot и гости: 6

    TopList