11 клас (академ). Події та їх обробники. - 11 клас (академічний) - Інформатика - Каталог статей - Кабінет інформатики Черкаської СПШ №20
Кабінет 208
Головна | Реєстрація | Вхід
П`ятниця, 09.12.2016, 19:22
Меню сайту
Форма входу

Категорії розділу
5 клас [11]
6 клас [24]
7 клас [16]
8 клас [15]
9 клас [25]
10 клас (стардарт) [17]
10 клас (академічний) [23]
11 клас (стандарт) [21]
11 клас (академічний) [33]
Головна » Статті » Інформатика » 11 клас (академічний)

11 клас (академ). Події та їх обробники.
Події та їх обробники.


Працюючи з різними програмами, ви звернули увагу, що вибір кнопки завжди приводить до настання певної події. Розміщення на формі кнопки недостатньо, щоб при її виборі щось відбулося. Вибір кнопки є певною подією, і програмі потрібно "повідомити", що вона повинна зробити, тобто яка подія повинна відбутися при виборі кнопки.

Якщо виділити кнопку, то у вікні Object Inspector на вкладці Events (події) можна вказати, яка подія повинна відбутися як реакція, наприклад, на вибір кнопки. Для цього потрібно двічі клацнути в полі справа від напису OnClick (на клацання кнопкою миші). У результаті цих дій у полі OnClick з’являється текст Button1Click, а у центральній частині вікна середовища розробки відкривається вкладка Code, на якій створюється заготовка процедури TForm1.Button1Click, команди якої ї будуть виконуватися після вибору кнопки  Button1 (рис. 2.21).  

Процедура – це частина програми, яка має ім’я і яку можна за цим іменем викликати на виконання в різних частинах програми.

Отже, після вибору кнопки Button1 (подія Click) настає подія OnClick, яка полягає у виконанні команд процедури TForm1.Button1Click. Кажуть, що  процедура TForm1.Button1Click є обробником події OnClick, кнопки Button1, або, що процедура TForm1.Button1Click є методом об’єкта Button1.

Аналогічно, можна створювати обробники інших подій:

·       OnMouseMove  настає після наведення вказівника на кнопку;

·       OnKeyPress – настає після натиснення клавіші клавіатури;

·       OnStartDrag – настає після початку перетягування об’єкта.

Для форм та інших об’єктів можна обробляти більше подій. Деякі з них:

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

·       OnShow – настає безпосередньо перед виводом форми на екран;

·       OnHide – настає перед тим, як форма стане невидимою;

·       OnDblClick – настає після подвійного клацання на формі;

·       OnPaint – настає коли форми (вся чи частково) перемальовуються;

·       OnActive – настає кожного разу при активізації форми;

·       OnDeActive – настає кожного разу втраті формою активності;

·       OnReSize – настає при зміні розмірів форми під час виконання проекту;

·       OnHelp – настає після виклику довідки (F1 на формі);

·       OnClose – настає безпосередньо перед закриттям форми.

Розглянемо детальніше структуру процедури TForm1.Button1Click. Перший рядок процедури – рядок заголовка. Він складається зі стандартного слова procedure, імені процедури TForm1.Button1Click  та її параметрів. Закінчується (;). Команди процедури, які будуть виконуватися при настанні події OnClick, записуються між двома стандартними словами begin і end.  Команди процедури утворюють тіло процедури. Слова begin і end визначають, де починається і де закінчується тіло процедури (вони називаються операторними дужками) Після слова end повинна стояти (;). Кожна команда процедури також повинна закінчуватися (;). Найпростішим методом події є зміна значень властивостей певних елементів. Загальний вигляд цих команд такий

<ім’я об’єкта>.<ім’я властивості> := <значення або вираз>;

Наприклад, виконання наступної процедури змінить колір вікна на синій, змінить текст у рядку заголовка, зменшить ширину форми на 150 пікселів, змінить положення кнопки і текст на ній:

procedure TForm1.Button1Click(Sender: TObject);

begin

Form1.Color := clBlue;

Form1.Caption := 'Значення властивостей змінилися';

Form1.Width := Form1.Width - 150;

Button1.Left := 60;

Button1.Top := 100;

Button1.Caption := 'Змінити!';

end;

(результат на рис. 2.22 стор. 55)

 Середовище розробки Turbo Delphi 2006 має зручні засоби допомоги при введенні тексту проекту, а саме:

  • після введення першої букви імені об’єкта можна натиснути сполучення клавіш Ctrl+Пропуск і відкриється список імен об’єктів,  властивостей, процедур, які починаються з цієї букви (рис. 2.30); з цього списку можна вибрати потрібне і  цей текст буде вставлено в текст проекту;
  • у ході написання тексту проекту середовище розробки слідкує за синтаксичними правилами написання команд; якщо ці правила порушуються, то текст з помилками або текст одразу після нього підкреслюється червоною хвилястою лінією (рис. 2.30, підкреслюється буква L; рис. 2.31, слово Label1 написано правильно, але після крапки не вказана властивість цього об’єкта; тому підкреслюється наступне слово); потрібно уважно слідкувати за цим і вчасно виправляти всі синтаксичні помилки;
  • Turbo Delphi 2006 не розрізняє великі і малі літери; але якщо слово утворено з кількох слів, прийнято (і зручно) писати першу літеру кожного слова великою; наприклад, TForm1.Button1Click;
  • після введення крапки, що розділяє ім’я об’єкта та ім’я властивості, автоматично відкривається список властивостей даного об’єкта (рис. 2.31); далі ім’я властивості можна не вводити з клавіатури, а знайти в списку і натиснути клавішу Enter; такий спосіб введення запобігає допущенню синтаксичних помилок, особливо тими, хто не знає англійської мови;
  • після запуску проекту на виконання компілятор аналізує текст на наявність синтаксичних помилок; якщо такі помилки будуть знайдені, то після аналізу всіх помилок компіляція проекту переривається і  червоним кольором виділяється фон першого з тих рядків тексту проекту, який містить синтаксичні помилки, або наступного за ним рядка (на рис 2.32 неправильно написане слово Label, тому червоним фоном позначено саме цей рядок, а на рис. 2.33 пропущено крапку з комою в кінці першої команди, у таких випадках червоним фоном позначається наступний рядок); усі інші помилки підкреслюються червоною хвилястою лінією; крім того, у вікні Structure з’являються повідомлення-підказки про вид помилки; потрібно виправити в тексті програми всі синтаксичні помилки і знову запустити проект на виконання.


Домашнє завдання            §2.5 (до стор. 56) пит. 1-4 стор. 60  Впр. 4, 5 стор. 61 (папки з проектами відправити вчителю)

Категорія: 11 клас (академічний) | Додав: admin (20.10.2013)
Переглядів: 1374
Пошук
Статистика

Онлайн всього: 1
Гостей: 1
Користувачів: 0
Copyright MyCorp © 2016
Безкоштовний хостинг uCoz