Структура If Then...

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

Структура If Then...

Сообщение Saturn.65 » 05.06.2009 (Пт) 8:27

Даны несколько TextBox. При нажатии на кнопку нужно посмотреть, если первый Text1.Text пустой, то ввести туда значение, если он не пустой, то записать во второй TextBox, если занят второй, то записать в третий и т.д. Пример:
Код: Выделить всё
Private Sub Command1_Click()
If Text1.Text = "" Then
Text1.Text = 5 + 5
ElseIf Val(Text1.Text) > 0 Then
Text2.Text = 6 + 6
ElseIf Val(Text2.Text) > 0 Then
Text3.Text = 7 + 7
Else
MsgBox "ОК"
End If
End Sub

Дальше Text2.Text операции не выполняются. Что может быть не правильно? И как правильно написать.
Главное, ребята, сердцем не стареть...

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Структура If Then...

Сообщение MIT » 05.06.2009 (Пт) 8:32

Может лучше длину строки с нулем сравнивать, а не саму строку?
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Saturn.65
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 543
Зарегистрирован: 13.10.2006 (Пт) 18:46

Re: Структура If Then...

Сообщение Saturn.65 » 05.06.2009 (Пт) 8:44

MIT писал(а):Может лучше длину строки с нулем сравнивать, а не саму строку?

Всяко пробовал. Мне надо чтоб с каждым нажатием кнопки запись происходила в следующий TextBox по очереди, а не сразу во все.
Главное, ребята, сердцем не стареть...

Xcode
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 131
Зарегистрирован: 31.10.2008 (Пт) 8:12
Откуда: Pavlodar

Re: Структура If Then...

Сообщение Xcode » 05.06.2009 (Пт) 8:49

Попробуй протрасировать код. Думаю поймешь почему так происходит.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Структура If Then...

Сообщение Денис » 05.06.2009 (Пт) 9:12

Для этого кода ты должен сделать текстбоксы массивом (в дизайнере):

Код: Выделить всё
Private Sub Command1_Click()

    Dim i as integer
   
    for i = 0 to TextB.Count-1
        If TextB(i).Text = "" Then
            TextB(i).Text = (5+i) + (5+i)
            exit for
        else
            MsgBox "ОК"
        end if
    next

End Sub
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Saturn.65
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 543
Зарегистрирован: 13.10.2006 (Пт) 18:46

Re: Структура If Then...

Сообщение Saturn.65 » 05.06.2009 (Пт) 9:38

Денис
Это то что надо! Большое спасибо! :D
Главное, ребята, сердцем не стареть...

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Структура If Then...

Сообщение Хакер » 05.06.2009 (Пт) 10:57

Saturn.65, а ты вообще когда-нибудь пользуешься переменными? Или только текстбоксами?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Saturn.65
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 543
Зарегистрирован: 13.10.2006 (Пт) 18:46

Re: Структура If Then...

Сообщение Saturn.65 » 05.06.2009 (Пт) 19:35

Хакер писал(а):Saturn.65, а ты вообще когда-нибудь пользуешься переменными?

Работаю. Просто я для примера показал. А кстати, в чем будет плюс замены, например Text1.Text на переменную?
Или я не в тему?
Главное, ребята, сердцем не стареть...

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Структура If Then...

Сообщение Хакер » 05.06.2009 (Пт) 19:59

У меня есть килограмм гвоздей. Их можно хранить в картонной коробке, а можно купить специально для этого новый автомобиль и хранить гвозди в салоне.

В чём плюс картонной коробки?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1667
Зарегистрирован: 17.06.2006 (Сб) 15:11

Re: Структура If Then...

Сообщение Debugger » 05.06.2009 (Пт) 20:10

В том, что она в самый нужный момент порвется.
Переменные, если я не ошибаюсь, работуют несколько быстрее обращений к свойствам.


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

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

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

    TopList