Сохранить проект еще раз File=>Save All либо сочетанием клавиш Shift+Ctrl+S.
Ознакомиться с приложением №4.
Контрольные вопросы:
Что такое заставка?
Какое имеет назначение компонент TImage?
Какое имеет назначение компонент TTimer?
Как загрузить иконку в проект?
Приложение №4
В данном приложении рассмотрим основные понятия и назначения компонентов TImage и TTimer, а также понятия заставки и способ загрузки иконки в проект.
Понятие заставки.
Заставка - небольшая орнаментальная или изобразительная (иногда сюжетная) композиция (в ширину наборной полосы или уже), выделяющая и украшающая начало какого-либо раздела как рукописной, так и печатной книги или журнала. В программном обеспечении (утилиты, различные приложения) заставка выступает в роли украшающего элемента, приветствия.
Компонент TImage.
Этот компонент служит надстройкой над классом TPicture и замыкает всю иерархию графических объектов VCL. Именно на его поверхности и будут отображаться графические объекты, содержащиеся в свойстве:
property Picture: TPicture;
В качестве свойства компонента canvas используется canvas объекта из свойства Picture.Graphic, но только если поле Graphic ссылается на объект класса TBitmap. Если это не так, то попытка обращения к свойству вызовет исключительную ситуацию EinvaiidOperation, т. к. рисовать на метафайле или значке нельзя.
С помощью данного компонента можно создавать на форме различные картинки, рисовать и т.п.
Компонент TTimer.
Компонент TTimer (таймер) служит для отсчета интервалов реального времени. Его свойство Interval определяет интервал времени в миллисекундах, который должен пройти от включения таймера до наступления события OnTimer. Таймер включается при установке значения True в его свойство Enabled. Во включенном таймере все время будет происходить событии OnTimer до тех пор, пока его свойство Enabled не примет значения False.
Следует учесть, что в силу специфики реализации аппаратного таймера персонального IBM-совместимого компьютера минимальный реально достижимый интервал отсчета времени не может быть меньше 55 миллисекунд (этот интервал называется тиком). Более того, любой интервал времени, отсчитываемый с помощью таймера, всегда кратен 55 миллисекундам.
Загрузка иконки в проект Delphi.
Для того чтобы загрузить свою иконку в проект Delphi 2010 необходимо зайти в опции проекта и во вкладке Application в поле Icon загрузить иконку, а именно Project=>Options=>Application=>Load Icon…
Практическая работа № 35
Наименование работы: «Конструирование меню в среде Delphi»
Цель работы: Получить практические навыки в создании меню программы в объектно-ориентированной среде Delphi 2010.
Литература: Флёнов М. «Библия Delphi», Том Сван «Основы программирования в Delphi».
Подготовка к работе: Повторить раздел «Основы языка программирования Delphi».
Перечень основного оборудования: ПЭВМ Pentium.
Задание:
Создать в ранее созданном приложении (пр.работа №34) меню.
Оформить отчет, записав в него программный код приложения.
Ответить на контрольные вопросы.
Порядок выполнения работы:
Запустить объектно-ориентированную среду Delphi 2010.
Открыть ранее созданный проект File=>Open Project…=>Lab34_35.dpr
С вкладки Standard на форму MainForm разместить следующие компоненты: TMainMenu (1шт.), TMemo (1 шт.), TButton (1 шт.), а с вкладки Dialogs переместить TOpenDialog (1 шт.) и TSaveDialog (1 шт.).
Изменить свойство Name компонента MainMenu1 на «MainMenu».
Щелкнуть 2 раза по компоненту MainMenu и создать такое меню, как показано на Рис. 5:
Рис. 5.1. – Редактирование меню.
Для того чтобы получить такое меню необходимо изменить следующие свойства:
Файл:
Caption: & Файл.
Открыть:
Caption: &Открыть.
ShortCut: Ctrl+O.
Bitmap: из папки 35 загрузить файл open.bmp.
В обработчике событий (Events) создать событие OnClick:
procedure TMainForm.N2Click(Sender: TObject);
begin
if not opendlg.Execute then exit;
mainmemo.Lines.LoadFromFile(opendlg.FileName);
end;
Сохранить:
Caption: &Сохранить.
ShortCut: Ctrl+S.
Bitmap: из папки 35 загрузить файл save.bmp.
В обработчике событий (Events) создать событие OnClick:
procedure TMainForm.N3Click(Sender: TObject);
begin
if not savedlg.Execute then exit;
mainmemo.Lines.SaveToFile(savedlg.FileName+'.txt');
end;
Выход:
Caption: &Выход.
ShortCut: Ctrl+X.
Bitmap: из папки 35 загрузить файл exit.png
Чтобы разделить надписи Сохранить и Выход нужно в свойстве Caption после того как сделали надпись Сохранить ввести знак «-».
Далее измените свойства компонента Memo1 на следующие:
Name: «mainmemo».
Lines: удалите содержимое.
ScrollBars: ssVertical.
Изменить свойства компонента Button1 на следующие:
Name: «exitbtn».
Caption: «&Выход».
Cursor: crHandPoint.
Изменить свойства компонента OpenDialog1 на следующие:
Name: «opendlg».
Filter: «Text Files (*.txt)|*.txt».
Изменить свойства компонента SaveDialog1 на следующие:
Name: «savedlg».
Filter: «Text Files (*.txt)|*.txt».
В обработчике событий (Events) для компонента exitbtn создать событие OnClick:
procedure TMainForm.exitbtnClick(Sender: TObject);
begin
Close;
end;
В обработчике событий (Events) компонента N5
найти событие OnClick и выставить там exitbtnClick.
В итоге у Вас после компиляции должна примерно получиться приложение изображенное на Рис. 5.2.:
Рис. 5.2. – Откомпилированное приложение (форма MainForm).