Создание программы на Visual basic для вывода случайного числа в заданном интервале чисел. Часть 5

Продолжение. Смотрите другие части статьи: Часть 1,Часть 2,Часть 3,Часть 4

Итак, в прошлый раз мы добились поставленной цели и получили вполне работоспособную программу, однако, ее необходимо усовершенствовать. Предположим, что вы забыли задать интервал генерируемых чисел и сразу нажали кнопку "Generat a number". Запустите программу и без указания значений Max и Min нажмите на Max и Min, как видите, программа выдала сообщение об ошибке, - для выхода нажмите на кнопку "End".

Давайте попробуем исправить эту ошибку таким способом, чтобы программа в таких случаях выдавала сообщение об ошибке с текстом: "Вы забыли указать значения Max и Min".

Для этого случая мы используем конструкцию типа If .... Then (Если ... то), после If необходимо записать условие, а после Then записываются операции, которые выполняются, если условие верно (True) и не выполняются если условие не верно (False).

If  Условие  Then  Выполнить

Например,

Dim x, y
    x=5
    If x<4 Then y=5
    If x>4 Then y=3

В этом случае мы сначала инициализируем переменные (x) и (y), затем переменной x присваиваем значение 5, и задаем условие, - если (x) меньше 4, то y=5, а, если x>4, то y=3. Следовательно после выполнения данных операций (y) будет присвоено значение 3, т.к. 5>4. Если после слова Then надо использовать несколько операторов, то условиеIf ... Then необходимо завершить оператором End If, например:

Dim x, y
    x=5
    If x<4 Then
    y=5
    x=y
End If


В этом случае если x<4, то (y) присваивается значение 5, а (x) присваивается значение (y), т.е. тоже 5. Для выполнения различных операторов в зависимости от условия в Visual Basic используется конструкция If .... Then ... Else (Если ... То ... В обратном случае), после Else следуют операторы, которые выполняются, если условие If не верно (False), например:

Dim x, y
    x=5
    If x<4 Then
     y=5
     x=y
   Else
    y=4
    x=y
End If



Т.к. x=5, то условие x<4 не верно, следовательно будет выполняться блок, следующий за оператором Else, т.е. (y) будет присвоено значение 4, а (x) также значение 4.

В условии после оператора If можно задавать несколько параметров, указывая характер их проверки на верность: если между условиями записать (Or), то условие будет верным, если одно из выражений является true, а если между условиями записать (And), то оно выполнится только в том случае, если оба выражения верны. Например:

Dim x, y
    x=2
    y=3
    If x>4 Or y<2 Then
     y=5
     x=y
   Else
     y=4
     x=y
End If


В этом случае будет выполняться первый блок, т.к. второе выражение удовлетворяет условию, однако, если вместо (Or) мы запишем (And), то будет задействован второй блок - после оператора Else.

А теперь давайте преобразуем нашу программку, как было задумано в начале урока. Дважды щелкните на кнопке "Generat a number" и составьте следующий код для данной кнопки:

Private Sub Command1_Click()
    Dim Max
    Dim Min
    If txtMax.Text = "" Or txtMin.Text = "" Then
     MsgBox "Вы забыли указать значения Max и Min"
    Else
     Max = txtMax.Text
     Min = txtMin.Text
     lblNumber.Caption = Int((Max - Min) * Rnd() + Min)
   End If
End Sub


MsgBox выводит на экран сообщение в окошечке с кнопкой "Ok".

Теперь запустите приложение и, ничего не набирая в полях Max и Min, нажмите на кнопку "Generat a number", как видите появилось наше сообщение (Рис. 18).

Рис.18 Подсказка об ошибке

Нажмите на кнопку "Ok", и данное сообщение будет появляться до тех пор, пока вы не укажите максимальное и минимальное значения. Конечную версию программы вы можете увидеть на моем сайте - в разделе "Программы" под названием"Random Number ".

Ну все, вроде как программка готова, осталось лишь рассмотреть вопрос ее компиляции для получения полноправной Виндоусовской программы, оставим это на следующий раз.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...

Дата публикации:
Автор публикации: