ТЕМА № 6.Оператор Case
Задание: разработайте приложение, которое изменяет форму фигуры из занятия № 5 по ее названию (Окружность, Прямоугольник и т.п.).
Ход работы
Рис. 11. Конструктор формы
1 Загрузите сохраненный проект из занятия № 5.
2 Создайте на форме элемент управления TextBox (рис. 11), в который пользователь будет вводить название фигуры.
3 Создайте кнопку CommandButton, при щелчке по которой будет изменяться форма фигуры.
4 Запрограммируйте событие Click для этой кнопки следующим образом:
Private Sub cmdИзменить_Click()
If txtФорма = "Окружность" Then shpФигура.Shape = 3
End Sub
5 Запустите программу, введите в текстовое окно слово «Окружность» и щелкните по кнопке для изменения формы фигуры.
6 Запрограммируйте аналогично изменение формы фигуры для прямоугольника, квадрата и т.д. Воспользуйтесь для этого оператором выбора Case:
Private Sub cmdИзменить_Click()
Select Case txtФорма
Case "Прямоугольник"
shpФигура.Shape = 0
Case "Эллипс"
shpФигура.Shape = 2
Case "Окружность"
shpФигура.Shape = 3
End Select
End Sub
Рис. 12. Результат работы приложения
7 Запустите и отладьте программу. Сохраните проект.
Дополнительное задание
Добавьте в обработку изменения фигуры еще две формы Квадрат и Нет фигуры.
Контрольные задания
Добавьте TextBox для изменения следующих свойств фигуры (в скобках перечислены возможные значения):
1) высота (минимальная, средняя, максимальная);
2) ширина (минимальная, средняя, максимальная);
3) цвет границы (белый, синий, красный);
4) ширина границы (тонкая, средняя, толстая);
5) левая граница (минимальная, средняя, максимальная);
6) верхняя граница (минимальная, средняя, максимальная);
7) цвет фигуры (зеленый, серый, черный);
8) стиль заливки (прозрачный, сплошной, в линию).
Вопросы для самоконтроля
1 Каким образом мы можем задавать цвет в VB?
2 В каких ситуациях следует заменять условный оператор на оператор выбора?
3 Приведите пример использования оператора выбора.
4 Какое свойство элемента управления Shape является свойством по умолчанию?
5 Каков стандартный префикс имени элемента управления Shape?
6 Какой оператор VB называется оператором выбора?
ТЕМА № 7.Элемент управления ListBox
Задание: замените элемент управления TextBox из занятия № 6 на элемент управления ListBox.
Справочный материал
Элемент управления ListBox, размещенный в форме, представляет собой список, из которого пользователь может выбрать одно из предложенных значений. Значения в списке могут размещаться в одну или несколько колонок. Количество колонок задается свойством Columns (Колонки). В том случае, если элементы списка не помещаются в выделенную для них в форме область, появляются полосы прокрутки, позволяющие просмотреть весь список.
Элементы в список могут добавляться во время разработки и программно с использованием метода AddItem. При формировании списка во время разработки в свойстве List вручную задается весь необходимый список. Данные не обязательно вводить в алфавитном порядке, т.к. их можно упорядочить, установив для свойства Sorted (Сортировка) значение True. В этом случае вновь вводимые элементы списка также будут располагаться в алфавитном порядке.
Visual Basic позволяет программно удалять элементы из списка с помощью метода RemoveItem.
Свойство ListCount позволяет определить количество элементов в списке. Это значение можно использовать, например, в том случае, если вы хотите обрабатывать элементы списка в цикле. Свойство ListIndex показывает номер выбранного элемента. При выборе первого элемента списка значение свойства равно 0, исходя из того, что нумерация элементов начинается с 0. Если выбран пятый элемент, значение свойства ListIndex будет равно 4.
Ход работы
1 Загрузите сохраненный проект из занятия № 6.
2 Удалите с формы текстовое окно с названием фигуры и кнопку для изменения формы.
3 Создайте на форме элемент управления ListBox, в котором Вы будете выбирать названия фигур (рис. 13).
Рис. 13. Конструктор формы
4 Введите названия фигур в свойство List, используя для ввода нового значения сочетание клавиш [Ctrl]+[Enter] (учтите, что названия фигур Вы должны вводить в том же порядке, в каком они перечислены в свойстве Shape для фигуры).
5 Так как свойство ListIndex (номер выбранного элемента списка) начинается с нуля, то событие Click можно запрограммировать следующим образом:
Private Sub lstФорма_Click()
shpФорма.Shape = lstФорма.ListIndex
End Sub
6 Это возможно только потому, что значения номеров элементов в списке совпадают со значениями форм фигуры, иначе нам пришлось бы воспользоваться оператором выбора, как на предыдущем занятии.
Рис. 14. Результат работы приложения
7 Всё работает, но теперь мы рассмотрим второй способ задания элементов списка: с помощью программного кода.
8 Удалите названия форм фигуры из свойства List элемента управления lstФорма в окне свойств. Запустите приложение и убедитесь, что названия действительно отсутствуют в списке. Теперь необходимо добавить в обработку события Load формы следующий код:
Private Sub Form_Load()
lstФорма.AddItem «Прямоугольник»
lstФорма.AddItem «Квадрат»
lstФорма.AddItem «Эллипс»
lstФорма. AddItem «Окружность»
End Sub
9 Запустите и отладьте программу. Сохраните проект.
Дополнительное задание
Выполните дополнительное задание из занятия № 6, реализовав функции Квадрат и Нет фигуры с помощью элемента управления ListBox.
Контрольные задания
Добавьте ListBox для изменения следующих свойств фигуры (в скобках перечислены возможные значения):
1) высота (минимальная, средняя, максимальная);
2) ширина (минимальная, средняя, максимальная);
3) цвет границы (белый, синий, красный);
4) толщина границы (тонкая, средняя, толстая);
5) левая граница (минимальная, средняя, максимальная);
6) верхняя граница (минимальная, средняя, максимальная);
7) цвет фигуры (зеленый, серый, черный);
8) стиль заливки (прозрачный, сплошной, в линию).
Вопросы для самоконтроля
1 Каково основное назначение элемента управления ListBox?
2 Сравните элементы управления TextBox, ScrollBar и ListBox. В чем состоят преимущества и недостатки каждого из них?
3 С помощью каких свойств можно узнать, какой именно элемент списка выбран в данный момент?
4 Каким образом можно задать элементы списка?
5 Приведите примеры использования ListBox.
6 С помощью какого метода можно добавить новый элемент в ListBox?
7 С помощью какого метода можно удалить элемент из ListBox, если известен его порядковый номер?
8 С помощь какого свойства элемента управления ListBox можно узнать, какой номер имеет элемент списка, выбранный в данный момент?
9 Каков стандартный префикс у элемента управления ListBox?
10 В списке lstПроба 5 элементов. С помощью команды lstПроба.AddItem «Шестой» добавим в него новый элемент. Какой индекс получит этот элемент?
|