Опубликован: 31.08.2006 | Уровень: специалист | Доступ: платный
Лекция 7:

Использование условных структур

Использование операторов сравнения вместе со структурой Select Case

Операторы сравнения позволяют включить в структуру Select Case диапазон значений. Для этого служат такие операторы сравнения Visual Basic, как =, <>, >, <, >= и <=. Чтобы использовать операторы сравнения, вы должны включить в выражение ключевое слово Is или ключевое слово To, определяющие производимое сравнение. Ключевое слово Is говорит компилятору о том, что требуется сравнить переменную с выражением, указанным после ключевого слова Is. Ключевое слово To определяет диапазон значений. Следующая структура использует Is, To и несколько операторов сравнения для того, чтобы проверить значение переменной Age и отобразить одно из пяти сообщений:

Select Case Age
Case Is < 13
Label1.Text = "Радуйся своему детству!"
Case 13 To 19
Label1.Text = "Радуйся своей молодости!"
Case 21
Label1.Text = "Пей вино с друзьями."
Case Is > 100
Label1.Text = "Прекрасно выглядишь!"
Case Else
Label1.Text = "Вы в полном расцвете сил."
End Select

Если значение переменной Age меньше 13, отображается сообщение "Радуйся своему детству!" Для возраста от 13 до 19 лет отображается сообщение "Радуйся своей молодости!", и так далее.

Структура выбора Select Case обычно гораздо яснее, чем структура If...Then, и более эффективна, когда вы на основе значения переменной или свойства делаете три или более ветвей. Однако когда вы делаете два или менее сравнений, или когда вы работаете с несколькими различными значениями, то вы, скорее всего, будете использовать структуру выбора If...Then.

В следующем упражнении вы увидите, как можно использовать структуру Select Case для обработки ввода из поля списка. Используйте для получения ввода свойства ListBox1.Text и ListBox1.SelectedIndexChanged, а затем для отображения приветствия на одном из четырех языков структуру Select Case.

Использование структуры Select Case для обработки списка
  1. В меню File (Файл) щелкните на New (Создать), а затем Project (Проект). Появится диалоговое окно New Project (Создать проект).
  2. В папке c:\vbnet03sbs\Гл.6 создайте новый проект Windows Application (Приложение Windows) на Visual Basic с именем My Case Greeting. В Конструкторе Windows Forms появится пустая форма.
  3. Щелкните на элементе управления Label на закладке Windows Forms окна области элементов, а затем нарисуйте в верхней части формы большую метку, которая будет отображать название программы.
  4. Под большой меткой названия нарисуйте метку поменьше.
  5. Щелкните в области элементов на элементе управления ListBox, а затем нарисуйте под двумя имеющимися метками поле списка.
  6. Для отображения вывода программы нарисуйте под полем списка еще две небольшие метки.
  7. В области элементов выберите элемент управления Button, и нарисуйте в нижней части формы маленькую кнопку.
  8. Щелкните на кнопке Properties (Свойства) стандартной панели инструментов, а затем установите свойства объектов в соответствии со следующей таблицей. Также установите свойства Name, так как понадобится следить сразу за многими объектами вашей формы.

    Объект Свойство Установка
    Form1 Text Приветствие
    Label1 Font Times New Roman, Bold (Жирный), 12-point (12 пунктов)
    Name lblTitle
    Text "Интернациональная программа приветствий"
    Label2 Name lblTextBoxLabel
    Text "Выберите страну"
    Label3 Font 10 пунктов
    Name lblCountry
    Text пустой (empty)
    Label4 BorderStyle Fixed3D
    ForeColor Red (Красный)
    Name lblGreeting
    Text пустой (empty)
    ListBox1 Name lstCountryBox
    Button1 Name btnQuit
    Text "Выход"

    Когда вы закончите установку свойств, ваша форма должна выглядеть примерно так.


    Теперь нужно ввести код программы для инициализации списка.

  9. Сделайте двойной щелчок мышью на форме. В Редакторе кода появится процедура события Form1_Load.
  10. Для инициализации списка введите следующий код программы:

    lstCountryBox.Items.Add("Англия")
    lstCountryBox.Items.Add("Германия")
    lstCountryBox.Items.Add("Мексика")
    lstCountryBox.Items.Add("Италия")
    lstCountryBox.Items.Add("Россия")

    Для добавления элементов в список формы эти строки используют метод Add объекта список.

  11. Чтобы переключиться обратно в Конструктор Windows Forms, щелкните на закладке Form1.vb [Design] в верхней части Редактора кода, а затем сделайте двойной щелчок мышью на объекте списка в вашей форме, чтобы отредактировать его процедуру события. В Редакторе кода появится процедура события lstCountryBox_SelectedIndexChanged.
  12. Для обработки выбора, сделанного пользователем в списке, введите следующие строки:

    lblCountry.Text = lstCountryBox.Text
    Select Case lstCountryBox.SelectedIndex
    Case 0
    lblGreeting.Text = "Hello, programmer"
    Case 1
    lblGreeting.Text = "Hallo, programmierer"
    Case 2
    lblGreeting.Text = "Hola, programador"
    Case 3
    lblGreeting.Text = "Ciao, programmatore"
    Case 4
    lblGreeting.Text = "Здравствуй, программист"
    End Select

    Первая строка копирует имя выбранного элемента списка в свойство Text третьей метки формы (которую вы переименовали в lblCountry). Наиболее важным свойством, использованным в этом операторе, является lstCountryBox.Text, которое содержит текст элемента, выбранного в списке. Остальные операторы являются частью структуры выбора Select Case. Эта структура использует в качестве проверяемой переменной свойство lstCountryBox.SelectedIndex и сравнивает его с несколькими значениями. Свойство SelectedIndex всегда содержит номер выбранного элемента списка; самый первый элемент имеет номер 0, второй элемент - номер 1, следующий - 2, и т.д. С помощью SelectedIndex структура Select Case может быстро определить, что выбрал пользователь, и отобразить верное приветствие.

  13. Снова откройте форму и сделайте двойной щелчок мышью на кнопке Выход ( btnQuit ). В Редакторе кода появится процедура события btnQuit_Click.
  14. Введите в этой процедуре события End.
  15. Чтобы сохранить изменения, щелкните на кнопке Save All (Сохранить все) на стандартной панели инструментов. Теперь запустите программу и посмотрите, как работает оператор Select Case. Готовый проект Case Greeting расположен в папке c:\vbnet03sbs\Гл.6\case greeting.
  16. Чтобы запустить программу, щелкните на кнопке Start (Начать) стандартной панели инструментов.
  17. Щелкните в списке Выберите страну на названии каждой из стран. Для каждой из перечисленных стран программа отображает приветствие. На иллюстрации показано приветствие для Италии.


  18. Чтобы остановить программу, щелкните на кнопке Выход. Программа остановится, и вернется среда разработки.

В этой лекции вы закончили работать со структурами выбора If...Then и Select Case. Однако далее в этой книге у вас будет еще несколько возможностей поработать с ними. If...Then и Select Case - это два из наиболее важных и ключевых механизмов Visual Basic, и вы обнаружите, что будете использовать их почти в каждой программе.

Сайдахмад Зарипов
Сайдахмад Зарипов
Жанболат Шаймерден
Жанболат Шаймерден

Можно ли выбирать язык для надписей и команд в среде разработки?

Виталий Григорьев
Виталий Григорьев
Россия, москва, мгсги, 2011
Надежда Серекпаева
Надежда Серекпаева
Россия, Тюмень, Тюменский индустриальный институт, 1992