Автор работы: Пользователь скрыл имя, 06 Февраля 2011 в 20:32, лабораторная работа
Цель:
1.Познакомиться с основными событиями объекта «Форма».
2.Научиться создавать и правильно сохранять приложения.
Итак, щелчок левой кнопкой мыши по форме порождает событие OnClick формы, т.е. приводит к обращению к процедуре TMainF.FormClick, в результате чего выполняется оператор (*) – изменение цвета формы на синий. Изменим оператор (*) в соответствии с формулировкой задачи:
procedure TMainF.FormClick(Sender: TObject);
begin
Color := RGB(Random(256), Random(256), Random(256)); (**)
end;
Сравните правые части операторов (*) и (**). Оператор (*) изменяет цвет конкретного объекта типа TMainF (под именем MainF). Оператор (**) позволяет изменить цвет любого объекта типа TMainF, следовательно, этот оператор более общий, и далее будем использовать его при обращении к форме.
Запустите
приложение. Убедитесь, что после
каждого щелчка по форме левой
кнопкой цвет изменяет произвольным
образом.
Упражнение 3. Напишите приложение, в котором при нажатии на левую кнопку мыши происходит смена цвета с голубого на синий, и, наоборот, с синего на голубой.
Решение
При щелчке по левой кнопке мыши происходит событие OnClick. В соответствии с условием задачи в обработчике события OnClick формы необходимо проанализировать свойство Color формы: если его значение соответствует синему, то изменить его на голубой (clAqua), иначе присвоить значение clBlue. На языке Object Pascal это записывается так:
procedure TMainF.FormClick(Sender: TObject);
begin
if Color=clBlue then Color:=clAqua else Color:=clBlue;
end;
Сохраните
приложение, запустите его. Проверьте
выполнение условия задачи.
Упражнение для самостоятельного выполнения. Напишите приложение, в котором при нажатии на левую кнопку мыши происходит поочередная смена трех (по Вашему выбору) цветов.
Сохраните
приложение, запустите его. Проверьте
выполнение условия задачи.
Содержание отчета
Критерии оценки
Каждое упражнение – по одному баллу (выполненное в соответствии с п .2,3,4 содержания отчета)
Конспект – 1 балл.