События главной формы.
В данном разделе мы рассмотрим описание основных событий, которые может «отлавливать» главная форма приложения.
Событие |
Описание |
OnActivate |
Когда приложение стало активным. |
OnCanResize |
Это событие генерируется перед тем, как изменить размер окна. Здесь можно запретить какие-либо изменения или производить какие-то подготовительные действия. |
OnClick |
Генерируется, когда пользователь щелкнул по форме. |
OnClose |
Генерируется, когда окно закрывается. |
OnCloseQuery |
Генерируется до закрытия окна. В этом обработчике происходит запрос на закрытие, поэтому из этого обработчика можно вывести окно, которое будет запрашивать подтверждение на закрытие. Такие подтверждения можно увидеть в каждом втором приложении типа "Вы уверены, что хотите закрыть окно?". |
OnCreate |
Генерируется, когда окно создается. |
OnDblClick |
Генерируется, когда пользователь дважды щелкнул по окну. |
OnDeactivate |
Генерируется, когда окно деактивируется. |
OnDestroy |
Когда окно уничтожается. |
OnHide |
Генерируется, когда окно исчезает из виду. Событие генерируется даже тогда, когда память, выделенная для окна, не уничтожается. |
OnKeyDown |
Генерируется, когда нажата клавиша на клавиатуре. |
OnKeyPress |
Генерируется, когда нажата и отпущена клавиша на клавиатуре. |
OnKeyUp |
Генерируется, когда отпущена клавиша на клавиатуре. |
OnMouseDown |
Генерируется, когда нажата кнопка мыши. |
OnMouseMove |
Генерируется, когда двигается мышка. |
OnMouseUp |
Генерируется, когда отпускается кнопка мыши. |
OnMouseWheel |
Генерируется колесиком мыши. |
OnMouseWheelDown |
Генерируется, когда колесико мыши прокручено вниз. |
OnMouseWheelUp |
Генерируется, когда колесико мыши прокручено вверх. |
OnPaint |
Генерируется, когда надо перерисовать окно. |
OnResize |
Генерируется, когда надо изменить размеры окна. |
OnShortCut |
Генерируется, когда нажата горячая клавиша. |
OnShow |
Генерируется, когда показывается окно, но до фактической прорисовки. В этот момент окно уже создано и готово к отображению, но еще не прорисовалось на экране. |
Практическая работа №34
Наименование работы: «Создание заставки программы».
Цель работы: Развить практические навыки в создании заставки программы в объектно-ориентированной среде Delphi 2010.
Литература: Флёнов М. «Библия Delphi», Том Сван «Основы программирования в Delphi».
Подготовка к работе: Повторить раздел «Графические возможности Delphi».
Перечень основного оборудования: ПЭВМ Pentium.
Задание:
Создать заставку к своему приложению в Delphi 2010.
Оформить отчет, записав в него программный код приложения.
Ответить на контрольные вопросы.
Порядок выполнения работы:
Запустить объектно-ориентированную среду Delphi 2010.
Создать новый проект File=>New=>VCL Forms Application – Delphi.
Создать еще одну форму File=>New=>Form – Delphi.
Сохранить проект File=>Save All, при этом изменив имена проекта с с Unit2 на Main, с Unit1 на Screen, и Project1 на Lab34_35.
В меню Project=>Options=>Forms выбрать в выпадающем списке Main Form главную форму Form2 (рис. 4.1.).
Рис. 4.1. – Выбор в проекте главной формы.
Изменить свойства формы Form1:
Caption: удалить «Form1».
Name: «ScreenForm».
BorderStyle: установить в bsNone.
Height: установить значение в 375.
Width: установить значение в 600.
Position: установить в poScreenCenter.
С вкладки компонентов Additional перенести в самый верхний левый угол формы компонент TImage.
Изменить свойства компонента TImage1:
Name: «scrimg».
Height: установить значение в 375.
Width: установить значение в 600.
Picture: кликнуть на квадратик справа как показано на изображении
Рис. 4.2. – Выбор картинки для нашей заставки.
и в открывшемся окне нажать на кнопку «Load…» и выбрать из папки «34» изображение «picture.jpg». Далее нажать на кнопку «OK».
С вкладки компонентов System перенести на форму компонент TTimer и изменить его свойства:
Name: «timer».
Interval: установить значение в 2000.
Enabled: установить в False.
С вкладки компонентов Standard перенести на форму 2 компонента TLabel.
Изменить свойства компонента Label1 на следующие:
Alignment: установить в taCenter.
AutoSize: установить в False.
Caption: удалить надпись «Label1».
Name: «screenlbl».
Font: кликнуть на квадратик справа как показано на изображении
Рис. 4.3. – Настройка шрифта для нашей надписи.
и в открывшемся окне установить значения как показано на рис. 4.4.
Рис. 4.4. – Установка нужных нам значений для Label1.
Height: установить значение в 19.
Left: установить значение в 8.
Top: установить значение в 345.
Width: установить значение в 584.
Аналогичным способом изменить свойства компонента Label2:
Alignment: установить в taCenter.
AutoSize: установить в False.
Caption: «Практическая работа №34-35».
Name: «namelbl».
Font: установить значения как показано на рис. 4.5.
Рис. 4.5. – Установка нужных нам значений для Label2.
Height: установить значение в 23.
Left: установить значение в 8.
Top: установить значение в 8.
Width: установить значение в 584.
Для компонента scrimg в обработчике событий (Events) создать событие OnClick и вписать следующий программный код:
procedure TScreenForm.scrimgClick(Sender: TObject);
begin // начало
ScreenForm.Close; // при нажатии по изображению закрываем форму
timer.Enabled:=false; // выключаем таймер
end; // конец
Для компонента timer создать событие OnTimer и вписать следующий программный код:
procedure TScreenForm.timerTimer(Sender: TObject);
begin // начало
screenform.Close; // по истечению 2 секунд закрываем форму
end; // конец
Перейти на форму Form2 и изменить ее свойства на следующие:
Borger Icons: снять галочки с biMaximize и biMinimize, оставив только biSystemMenu.
BorderStyle: установить в bsSingle.
Caption: «Практическая работа №34-35».
Icon: загрузить иконку из папка «34» mainicon.ico.
Name: «MainForm».
Position: установить в poScreenCenter.
В меню открыть Project=>Options=>Application, нажать на кнопку Load Icon… и загрузить иконку в наше приложение из папки «34» mainicon.ico, нажать OK.
Открыть программный код формы MainForm и в раздел uses добавить модуль Screen.
В обработчике событий (Events) формы MainForm создать событие OnShow и вписать следующий код:
procedure TMainForm.FormShow(Sender: TObject);
begin // начало
ScreenForm.screenlbl.Caption:='Программа выполнена студентом группы 3ПВТ-018'+
' Фамилия Имя'; // на нашей заставке присваиваем метке нашу надпись
ScreenForm.Show; // показываем форму с заставкой
screenform.timer.Enabled:=true; // включаем таймер
end;