Процедури обробки подій і методи

Кожному діалогового елементу (формі і елементам управління) в Visual Basic поставлено у відповідність певний набір подій, що відбуваються в період виконання програми. Наприклад, подія Load (Завантаження) відбувається при завантаженні форми, подія Clik (Клацання) викликається натисканням кнопки миші, подія DblClick (Подвійне клацання) викликається подвійним клацанням кнопки миші і т.д.

Кожному наведеним події ставиться у відповідність процедура обробки події (процедура (procedure)  в мовах програмування набір операторів, які виконуються при виклику процедури). Подія може викликати при наявності в додатку процедури обробки даної події програмований зміна даних. Visual Basic містить автоматично формуються заготовки для таких процедур в поле для запису програми. Ім'я процедури формується автоматично і складається з двох частин, розділених підкресленням: ім'я виділеного діалогового елемента й ім'я виділеного події.

У мовах програмування, що підтримують об'єктно-орієнтоване програмування, введені так звані методи. Методи працюють як процедури або функції (тобто забезпечують виконання тих чи інших дій або зміна даних відповідно стандартним алгоритмом, який реалізує даний метод), але належать конкретним об'єктам.

Для того щоб викликати метод, вказується ім'я об'єкта і через точку ім'я методу

Наприклад, Debug.Print забезпечує висновок (друк) тексту в спеціальному отладочном вікні (Debug ім'я вікна, Print ім'я методу).

1.11. Приклад розробки програми

Як приклад розглянемо наступну задачу.

Необхідно, щоб на формі розташовувалася кнопка, клацання по якій приводив би до появи на формі напису "Перше додаток", а наступний клацання видаляв би цей напис у вікні. Також треба передбачити кнопку виходу з програми.

1.11.1. Переміщення на форму елемента управління.

Для створення заданого інтерфейсу необхідно на форму помістити дві кнопки. Елемент управління - кнопка вибирається на панелі елементів керування.

1. Клацнути лівою кнопкою миші на зображенні відповідного елемента управління CommandButton.

2. Розташувати курсор миші на створеної формі вид якого при цьому зміниться з стрілки на хрест, і перемістити його в те місце форми, де буде знаходитися один з кутів створюваного елемента інтерфейсу.

3. Натиснути ліву кнопку миші і переміщати покажчик до тих пір, поки зображення елемента не стане необхідних розмірів, після чого слід відпустити кнопку - об'єкт буде створений.

2 спосіб: необхідно виконати подвійне клацання на зображенні необхідного елемента в стандартній панелі елементів управління. При цьому на форму буде додано новий об'єкт до встановлених за замовчуванням властивостями.

Якщо необхідно змінити який-небудь об'єкт на формі, його на початку необхідно виділити, при цьому на його кордонах з'являться так звані маніпулятори розміру. Для переміщення об'єкта за формою слід натиснути на ньому ліву кнопку миші і перемістити покажчик в потрібне місце.

В даному прикладі на форму необхідно помістити дві кнопки і поле мітки Label для тексту.

Після того, як необхідні елементи додані на форму, можна приступити до установки їх властивостей, які будуть визначати зовнішній вигляд і особливості роботи з інтерфейсом.

1.11.2. Формування властивостей.

Дані дії виконуються за допомогою вікна властивостей. Об'єкт на формі виділяється мишею, і у вікні властивостей встановлюються необхідні атрибути. Список властивостей, значення яких необхідно визначити в створюваному додатку, а також назви відповідних об'єктів наведені в табл. 1.

Опис змінних властивостей для елементів інтерфейсу

Опис використовуваних властивостей:

(Name) або (Ім'я) - ім'я об'єкта;

Caption - заголовок об'єкта (текст, який на ньому розташовується);

StartUpPosition - властивість форми, яке задає її положення на екрані при запуску програми;

Visible - визначає видимість / невидимість елемента при роботі програми.

1.11.3. Створення програмного коду.

Потім необхідно створити програмний код обробки подій.

Редагування програми здійснюється за допомогою вікна коду для створюваної форми, яке можна відкрити кількома способами:

1 спосіб - вибрати пункт Код (Code) в меню Вид (View). (Аналогічним чином можна повернутися до редагування форми - пункт Об'єкт (Object) в меню Вид (View));

2 спосіб - в Провіднику проектів виділити назву створюваної форми і вибрати для нього в контекстному меню пункт Показати Код (ViewCode). (Таким же чином можна повернутися до форми - пункт Показати Об'єкт (ViewObject) в контекстному меню форми);

3 спосіб - виконати подвійне клацання на відповідному елементі форми, для якого необхідно передбачити обробку будь-яких дій.

При натисканні на кнопку Напис необхідно виводити або ховати вміст мітки. Метод для обробки цієї події можна створити, двічі клацнувши на елементі, після чого з'явиться заготовка для процедури, обробної натискання даної кнопки користувачем:

Private Sub cmdWork_Click ()

Для кожного об'єкта існує набір стандартних подій, які можуть виникати при роботі додатка, і для будь-якого може бути написана процедура, яка обробляє ту чи іншу подію. В даному випадку для кнопок Напис і Вихід будуть створені процедури, обробні подія Click (клацання миші).

При написанні коду для обробки подій, імена створюваних процедур формуються наступним чином: спочатку - ім'я об'єкта, для якого пишеться програмний код, потім - символ "_" і в самому кінці - назва події. У розглянутому прикладі назва створюваної процедури виглядає так: cmdWork_Click.

Алгоритм процедури обробки події Click для керуючої кнопки cmdWork полягатиме в наступному: якщо об'єкт lblText є видимим, то необхідно зробити його невидимим, і навпаки.

Програма алгоритму виглядає:

Private Sub cmdWork_Click ()

If lblText.Visible = False Then

Аналогічно створюється процедура обробки події Click для об'єкта cmdExit. Її вмістом буде одна команда - End, при виконанні якої робота додатка завершується:

Private Sub cmdExit_Click ()

У середовищі розробки VB існує можливість автоматизації редагування програмного коду, при використанні якої для поточної команди або слова відображається список усіх можливих варіантів її написання (рис. 8).

Процедури обробки подій і методи