Работа с элементами управления из области элементов
Элементы управления для ввода информации
В Visual Basic имеется несколько механизмов для приема в программе входных данных. Текстовые поля предназначены для приема информации, набираемой на клавиатуре, меню представляют собой команды, которые можно выбирать с помощью мыши или клавиатуры, а диалоговые окна содержат совокупность элементов, которые можно выбирать как по отдельности, так и группой. В этом упражнении мы познакомимся с четырьмя элементами управления, предназначенными для приема информации в различных ситуациях. Вы узнаете об элементах управления RadioButton (переключатель), CheckBox (флажок), ListBox (список) и ComboBox (комбинированный список). Мы познакомимся с ними на примере программы на Visual Basic, которая называется Input Controls и представляет собой пользовательский интерфейс для системы заказов. В следующей лекции обсуждается, как использовать эти объекты вместе с меню в законченной программе. Давайте на примере элемента управления CheckBox посмотрим, как введенная информация обрабатывается в форме и коде программы. Выполните следующие действия.
Эксперимент с элементом управления CheckBox
- Чтобы закрыть проект Birthday, в меню File (Файл) выберите пункт Close Solution (Закрыть решение).
- Затем в меню File (Файл) выберите New (Создать) и щелкните на Project (Проект). Появится диалоговое окно New Project (Создать проект).
- Cоздайте новый проект с именем MyCheckBox в папке c:\vbnet03sbs\Гл.3. После того, как новый проект будет создан, в Конструкторе Windows Forms появится пустая форма.
- В области элементов выберите элемент управления CheckBox.
- Нарисуйте на форме один над другим два объекта флажка. Флажки CheckBox появляются на форме точно так же, как и другие объекты.
- Выберите элемент управления PictureBox и нарисуйте под этими двумя флажками два квадратных объекта вывода изображений.
-
Установите для новых объектов следующие свойства.
Объект Свойство Значение CheckBox1 Checked True Text "Калькулятор" CheckBox2 Text "Копировальная машина" PictureBox1 Image c:\vbnet03sbs\Гл.3\calcultr.bmp SizeMode StretchImage PictureBox2 SizeMode StretchImage В этой демонстрационной программе флажки используются для показа и сокрытия изображений калькулятора и копировальной машины. В свойстве Text объекта CheckBox содержится надпись, связанная с флажком в графическом интерфейсе. Свойство Checked позволяет задать для флажка значение по умолчанию. Если значение Checked равно True, в поле флажка будет стоять галочка, а если False (это значение по умолчанию), то ячейка будет пустой. Чтобы изменить размер изображений так, что они будут растянуты до размеров полей вывода, используйте свойство SizeMode. Форма должна выглядеть примерно так:
-
Чтобы открыть редактор кода на процедуре обработки события CheckBox1_CheckedChanged, дважды щелкните мышью на объекте флажка CheckBox1, а затем введите следующий код программы.
If CheckBox1.CheckState = 1 Then PictureBox1.Image = System.Drawing.Image.FromFile _ ("c:\vbnet03sbs\Гл.3\calcultr.bmp") PictureBox1.Visible = True Else PictureBox1.Visible = False End If
Процедура обработки события CheckBox1_CheckedChanged вызывается только в том случае, если пользователь щелкает на объекте (ячейке или надписи, то есть на всем поле) первого флажка. В процедуре обработки события используется конструкция If...Then, в которой определяется текущее состояние первого флажка. Если в его поле стоит галочка, то показывается картинка с калькулятором из папки c:\vbnet03sbs\Гл.3. Если отметка присутствует, то свойство CheckState содержит значение 1, а если она отсутствует, то значение 0. Свойство Visible используется для показа картинки, если отметка присутствует, или ее сокрытия, если отметка отсутствует. Обратите внимание, что длинная строка, которая загружает изображение в объект вывода изображения, перенесена на следующую строку с помощью символа продолжения строки (_).
-
Чтобы снова перейти на форму, в Solution Explorer (Обозревателе решений) нажмите кнопку View Designer (Просмотреть конструктор), а затем дважды щелкните мышью на втором флажке и добавьте в процедуру обработки события CheckBox2_CheckedChanged следующий код:
If CheckBox2.CheckState = 1 Then PictureBox2.Image = System.Drawing.Image.FromFile _ ("c:\vbnet03sbs\Гл.3\copymach.bmp") PictureBox2.Visible = True Else PictureBox2.Visible = False End If
Эта процедура события почти идентична той, которую вы только что ввели; отличаются только имена метафайла Windows (copymach.bmp), объект флажка ( CheckBox2 ) и объект вывода изображения ( PictureBox2 ).
Примечание. Готовая программа CheckBox находится по адреcу c:\vbnet03sbs\Гл.3\checkbox.
- Чтобы сохранить внесенные в проект изменения, нажмите кнопку SaveAll (Сохранить все) на стандартной панели инструментов.
Запуск программы CheckBox
- На стандартной панели инструментов нажмите кнопку Start (Начать). Visual Basic запустит программу в среде разработки. Так как при создании первого флажка была установлена галочка (свойство Checked имеет значение True), то в форме появится изображение калькулятора.
-
Щелкните на флажке Копировальная машина. Visual Basic выведет изображение копировальной машины, как показано ниже.
- Чтобы протестировать программу, поэкспериментируйте с различными комбинациями флажков и нажмите их несколько раз. Программная логика, которую вы добавили с помощью нескольких строк кода на Visual Basic, прекрасно справляется со своими задачами.
- Чтобы завершить выполнение программы, нажмите кнопку Закрыть в верхнем правом углу формы.