Статья
Версия для печати
Обсудить на форуме
Урок 6. VB События. Простейшая программа.



Предыдущий урок ----- Следующий урок


На прошлом уроке мы познакомились со свойствами компонентов и их методами. Сегодня мы поговорим о еще одном основном понятии визуальных сред разработки, - о событии.
Итак, у нас есть объект. У объекта есть свои свойства и методы. Но кроме этого с объектом может что-то происходить, на объект могут действовать мышь, клавиатура. Щелчок мыши по кнопке- это событие, которое происходит для кнопки. Если загружается ваше приложение, то для формы происходит событие загрузка, и т.д. Так же как и свойства, есть события общие для большого числа компонентов, а есть события, характерные только для конкретных компонентов.
Каждому событию присвоено имя, которое состоит из 2 частей: первая часть имя компонента для которого происходит событие (значение свойства Name этого компонента), вторая это название самого события. Разделены (или, скорее, соединены) эти части символом подчеркивания. Например, для щелчка по кнопке название события будет таким: cmd1_Click, если ваша кнопка носит имя cmd1.
Ну, хорошо, думаете вы. Ну происходит что-то там с этими компонентами, а нам что с этим делать?
Возьмем пример из быта. Вы сидите дома, раздается звонок в дверь и ВЫ ИДЕТЕ ОТКРЫВАТЬ. Разбираем: что же это было с точки зрения программирования? Для объекта "Дверной звонок" произошло событие Звонок. А вы при этом совершаете операцию Открытие двери. То есть, произошло определенное событие, а в ответ были выполнены тоже определенные действия, не обязательно напрямую связанные с тем объектом с которым произошло событие. Но возможен ведь был и другой вариант ответа на это событие Допустим, вы устали, легли подремать и никому не собирались открывать дверь. В дверь звонят, а вы закрываете ухо подушкой и спите дальше. Произошло то же самое событие, а ответ на него был разный. В этом случае говорят об обработке события. Те операции, которые мы подразумеваем как ответ на событие или действия, происходящие в результате события  нужно заложить внутрь обработки события.
В принципе, если нам этого не надо, событие может произойти, а никакого ответа на него не будет: мы его просто проигнорируем.
Если реакцией на событие должно быть какое-то действие, мы его должны запрограммировать. Это называется процедурой обработки события. Для того, чтобы программа выполняла некоторую работу в ответ на действия пользователя, программист должен написать процедуру обработки соответствующего события.
Чтобы создать процедуру обработки события, надо дважды щелкнуть мышью на компоненте для которого будет происходить событие. После этого вы перейдете в окно кода и программа VB напишет заготовку для события наиболее распространенного для выбранного компонента. Вы можете согласиться с этим, если хотели обработать именно это событие или в окошке События выбрать из выпадающего списка нужное вам событие. В окне Компоненты проверьте, что там установлен именно тот компонент, который вы выделяли.



VB присваивает процедуре обработки события имя, которое состоит из 2 частей (об этом мы уже упоминали): первая часть имя компонента для которого происходит событие, вторая это название самого события. (Form_Load:здесь процедура будет определять что произойдет при загрузке формы).
Спецификаторы Sub и End Sub обозначают начало и конец процедуры. Между ними должен располагаться код, который будет предписывать, что именно выполнит программа, если для данного компонента произойдет данное событие.

Давайте попробуем написать совсем маленькую программку.
  • Откройте новый проект, сразу его сохраните!
  • Дайте имя форме (не забывайте про префиксы!).
  • Разместите на форме 2 кнопки. Дайте им имена, не забывая про префиксы (:)). На кнопках напишите Звук и Выход (т.е. свойству Caption обеих кнопок присвойте соответствующие значения в окне свойств).
  • Сделайте двойной щелчок по кнопке Звук. Вы окажетесь в обработчике события Click для этой кнопки. Между Sub и End Sub напишите слово Beep. (Это метод самой программы, а не конкретного компонента, он вызовет звук)
  • Сделайте двойной щелчок по кнопке Выход. Вы окажетесь в бработчике события Click для этой кнопки. Между Sub и End Sub напишите слово End. Нажатие на данную кнопку закроет вашу программу.
  • Если вы все сделали правильно, код будет таким:

(Пусть первую кнопку вы назвали cmdSound, а вторую cmdEnd)
Код:
Private Sub cmdSound_Click
Beep
End Sub

Private Sub cmdEnd_Click
End
End Sub

Т.е.: при щелчке на кнопке Звук мы будем слышать звук ( у кого-то только в наушниках), а при щелчке на кнопке Выход программа закроется.
Теперь запускайте. Найдите на панели инструментов кнопочку со всплывающей подсказкой Старт и нажмите ее. Вы запустили свою программу. Теперь проверяйте как работают ваши кнопки.
На сегодня- все!


Автор: Never
Версия для печати
Обсудить на форуме