ЛАБОРАТОРНАЯ РАБОТА №2"Командные кнопки"
Цели: 1) Изучить элемент управления "командная кнопка".
2) Изучить общий принцип организации свойств элемен-
тов управления.
Поговорим о командных кнопках. Их основная задача - давать
пользователю возможность кликнуть щелкнуть левой клави-
шей мыши, вызывая какое-то действие. На форме кнопка выгл-
ядит примерно так:
Так как это первый элемент управления, который мы изуча-
ем в этом курсе, то рассмотрим его свойства очень подробно
и будем использовать эти знания в дальнейшем. Практика по-
кажет, что свойства многих элементов управления Windows
устроены одинаково.
Свойства CommandButton (командная кнопка).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Name - имя кнопки.
2. Height - высота кнопки в твипах.
3. Width - ширина кнопки в твипах.
4. Left - расстояние между левым краем формы и кнопкой.
5. Top - расстояние между правым краем формы и кнопкой.
6. Style - определяет наличие (отсутствие) на кнопке рису-
нка. Это свойство бинарное, т.е. может принимать только
два значения (0 - standart, 1 - graphical).
7. BackColor - цвет фона кнопки. Это свойство начинает де-
йствовать только в том случае, если "включено" свойство
style.
8. Font - шрифт текста на кнопке. Свойство состоит из нес-
кольких "подствойств": имя шрифта, размер, начертание
(курсив и пр.), атрибуты (зачеркнутый и пр.)
9. Picture - имя графического файла, который выводится
на кнопку. Это свойство начинает действовать только в
том случае, если "включено" свойство style.
10. Caption - текст, расположенный на кнопке.
11. Default - включение этого свойства обеспечивает реакц-
ию кнопки на клавишу Enter. Реакция заключается в том,
что если пользователь, находясь на форме, нажал клави-
шу Enter, то будет вызвана процедура, закрепленная
за этой кнопкой. Естественно, что только одна кнопка
на форме может иметь это свойство "включенным".
12. Cansel - включение этого свойства обеспечивает реакцию
кнопки на клавишу Esc. Реакция заключается в том,
что если пользователь, находясь на форме, нажал клави-
шу Esc, то будет вызвана процедура, закрепленная за
этой кнопкой.
13. Enabled - является ли кнопка активной.
14. Visible - является ли кнопка видимой.
15. TabIndex - порядок кнопки в фокусом порядке. Ну, тут
не обойтись без обяснений. Дело в том, что любой элем-
ент управления, который мы помещаем на форму, получает
фокусный номер. Этот номер определяет "фокусный поряд-
ок обхода элементов", т.е. именно в таком порядке фок-
ус будет "скакать" по форме, когда пользователь бу-
дет нажимать клавишу Tab. А мы, вот, можем этот поряд-
ок изменить. Понятно?
16. TabStop - может ли кнопка принимать фокус.
17. ToolTipText - хранит текст подсказки, которая возника-
ет при наведении на элемент управления курсора.
Пример.
~~~~~~~
Создадим программу (приложение Windows), которая играет
двумя кнопками "Больше" и "Меньше". Если пользователь кли-
кает на первой кнопке, то обе кнопки "растут"; если польз-
ователь кликает на второй кнопке - кнопки "уменьшаются".
Наши действия:
1. Создать новый проект.
2. Присвоить заголовку формы приложения "Командные кнопки:
больше, меньше".
3. Поместить на форму две кнопки: Command1, Command2. Изм-
енить имена кнопок (т.е. свойство Name) на cmdBig, cmd-
Little.
4. Думаем... Как заставить кнопки уменьшатся или увеличив-
аться в размерах? Надо изменять свойства, отвечающие за
координаты. Нам вполне хватит изменения свойств Height,
Widht (высота, ширина кнопки), причем давайте не бу-
дем забывать о том, что изменять надо свойства обеих
кнопок. Таким образом, процедуры для командных кнопок
будут таковы:
Private Sub cmdBig_Click()
cmdBig.Width = cmdBig.Width + 10
cmdBig.Height = cmdBig.Height + 10
cmdLittle.Width = cmdLittle.Width + 10
cmdLittle.Height = cmdLittle.Height + 10
End Sub
Private Sub cmdLittle_Click()
cmdBig.Width = cmdBig.Width - 10
cmdBig.Height = cmdBig.Height - 10
cmdLittle.Width = cmdLittle.Width - 10
cmdLittle.Height = cmdLittle.Height - 10
End Sub
5. Протестируйте свое приложение и сохраните его в свой
каталог.
Задания к лабораторной работе №2
1. Прочитать, законспектировать работу.
2. Проверить пример.
3. Получить и выполнить индивидуальное задание.