Использование условных структур
Проверка пользователей с помощью If ... Then
- Запустите Visual Studio и создайте в папке c:\vbnet03sbs\Гл.6 новый проект Windows Application (Приложение Windows) на Visual Basic с именем My User Validation. Будет создан новый проект и в Windows Forms Designer (Конструктор Windows Forms) появится пустая форма.
- С помощью элемента управления Button на закладке Windows Forms окна области элементов создайте кнопку в верхнем левом углу формы.
- Установите свойство Text этой кнопки равным "Войти".
-
С помощью элемента управления PictureBox создайте на форме под кнопкой прямоугольную область вывода изображений. Ваша форма должна выглядеть примерно так.
- Сделайте двойной щелчок мышью на кнопке Войти. В Редакторе кода появится процедура события Button1_Click.
-
Введите в этой процедуре события следующие операторы:
Dim UserName As String UserName = InputBox("Введите ваше имя.") If UserName = "Генри" Then MsgBox("Добро пожаловать, Генри! Как поживаешь?") PictureBox1.Image = System.Drawing.Image.FromFile _ ("c:\vbnet03sbs\Гл.6\henry photo.jpg") ElseIf UserName = "Феликс" Then MsgBox("Добро пожаловать, Феликс! Сыграем?") PictureBox1.Image = System.Drawing.Image.FromFile _ ("c:\vbnet03sbs\Гл.6\felix photo.jpg") Else MsgBox("Извините, я вас не знаю.") End 'выход из программы End If
Пробел и символ продолжения строки (_), использованные после свойств PictureBox1.Image, разбивают слишком длинные операторы программы на четыре строки. Вы можете ввести каждый из этих длинных операторов в одну строку; при этом Редактор кода будет прокручиваться вправо.
Совет. Строки программы в Редакторе кода и Visual Studio могут иметь в длину более 65 000 символов, но обычно проще всего работать со строками, длина которых не превышает 80 символов. Вы можете разбить длинные операторы программы на несколько строк с помощью пробела и символа продолжения строки (_), которые ставятся в конце всех строк выражения, за исключением последней. Однако нельзя использовать символ продолжения строки для разделения строковой константы, заключенной в кавычки.
Когда вы закончите, ваш экран должен выглядеть так.
- Чтобы сохранить изменения, щелкните на кнопке Save All (Сохранить все) на стандартной панели инструментов.
- Щелкните на кнопке Start (Начать) стандартной панели инструментов. Программа запустится на выполнение в среде разработки. На экране появится пустая форма с единственной кнопкой Войти в верхнем левом углу.
- Щелкните на кнопке Войти. Функция InputBox в процедуре события Button1_Click отображает диалоговое окно, которое просит вас ввести свое имя.
-
Введите Генри, а затем щелкните на OK.
Примечание. Проверки условий в этой программе учитывают регистр букв, так что убедитесь, что вы ввели "Генри", а не "генри".
Структура выбора If...Then сравнивает в первом условном выражении имя, которое вы ввели, с именем "Генри". Выражение равно True, и оператор If...Then отображает с помощью функции MsgBox приветственное сообщение.
-
Щелкните в окне сообщения на OK. Окно сообщения закроется, а в области вывода изображений появится фото в формате JPEG.
Процедура, использованная для загрузки картинки, та же, что была показана в лекциях "Работа с элементами управления из области элементов" и "Работа с меню и диалоговыми окнами" этой книги - я использую метод System.Drawing.Image.FromFile, который является частью пространства имен (или библиотеки объектов) System.Drawing. Этот метод специально разработан для загрузки изображений из файлов.
- Щелкните на кнопке Войти, введите Феликс, а затем щелкните на OK. На этот раз структура выбора выбирает случай ElseIf и пропускает пользователя Феликс в программу. На экране снова с помощью функции MsgBox отображается приветственное сообщение.
-
Щелкните в окне сообщения на OK. В объект вывода изображений загружается фотография в формате JPEG, ассоциированная с этим пользователем, как показано ниже.
-
Щелкните на кнопке Войти, введите Селли, а затем щелкните на OK. Исполняется блок Else структуры выбора, и в окне сообщения появляется следующее сообщение.
- Чтобы закрыть окно сообщения, щелкните на OK. Окно сообщения закроется, и программа остановится. Ваш код не допустил неавторизованного пользователя к использованию программы. Полная программа User Validation доступна на диске в папке c:\vbnet03sbs\ Гл.6\user validation.