Лабораторная работа Стандартные диалоги и компоненты Среда Delphi

Лабораторная работа №37

Тема 3.3: Стандартные диалоги и компоненты.
Цель: Получить практические навыки создания приложений с применением стандартных диалогов и компонентов в интегрированной среде разработки Delphi.
Оборудование: IBM – совместимые компьютеры.
Место проведения: Компьютерный класс.
Техника безопасности: См. инструкцию.

Ход работы
Работа иллюстрирует использование стандартных диалоговых окон, меню, кнопок быстрого доступа, многострочного редактора Memo.
1. Откройте новый проект и разместите на форме компоненты MainMenu (главное меню), PopupMenu ( всплывающее меню). На странице Dialogs найди те и разместите на форме компоненты OpenDialog (диалоговое окно выбора имени файла для открытия), SaveDialog (диалоговое окно выбора имени файла для сохранения), FontDialog (выбор шрифта), ColorDialog (выбор цвета). Все эти компоненты изобразятся на форме в виде значков. Добавьте компонент Memo (редактор текста) и задайте его свойство Align (выравнивание) в alBottom . Установите заголовок формы - Блокнот.
Memo представляет собой многострочный редактор текста. Содержимое редактора хранится в свойстве Lines. Это - свойство класса TStrings (набор строк).
2. Задайте свойства компонентов для выбора имен файлов:
Компонент OpenDialog:

Свойство
Значение
Комментарий

DefaultExt
txt
Расширение имени файла по умолчанию

Title

Открытие текстового файла

Filter
Все файлы | * *
При просмотре будут видны все файлы

Компонент SaveDialog:

DefaultExt
txt


Title

Сохранение текстового файла

Options. OverWritePrompt
true
Запрос перед перезаписью файла

Filter
Все файлы | * *
При просмотре будут видны все файлы


3. Запустите Дизайнер меню, щелкнув два раза по значку MainMenu. В Дизайнере создайте пункты горизонтального меню с заголовками File и Help и названиями (свойство Name) File1, Help1. Создайте ниспадающие меню для пункта File - Open, Save, SaveAs, Exit и пункта Help - About с такими же значениями Name.
4. Поместите под полосой меню Panel и расположите на ней три кнопки быстрого доступа (SpeedButton). Панель является контейнером для размещенных на ней компонентов, поэтому кнопки будут перемещаться вместе с панелью. Выберите свойство Gliph для нанесения изображений на кнопках. Файлы с изображениями находятся на диске в каталоге [ Cкачайте файл, чтобы посмотреть ссылку ]. Найдите изображения для обозначения открытия и сохранения файла и выхода из программы. Форма примет вид (Рисунок 1):

Рисунок 1 – Вид формы

5. Создайте обработчики событий выбора пункта меню (щелкнув два раза
по пункту меню):
procedure TForm1.OpenClick(Sender: TObject); begin
with OpenDialog1 do if Execute then begin // Метод Execute запускает диалог и возвращает True, если // для выхода из диалога была нажата кнопка ОК , т.е. файл был // выбран
Memo1.Lines.LoadFromFile(FileName);//Загружает в текстовый
// редактор файл с заданным именем HistoryList.Add(FileName);//Добавляет имя файла в «историю» Caption:='Блокнот-’+ExtractFileName (FileName); //Функция // ExtractFileName возвращает имя файла без пути, которое // затем отображается в заголовке формы
SaveDialog1.FileName:=FileName; //Запоминается имя
// открытого файла end; end;
procedure TForm1.SaveClick(Sender: TObject); begin
if OpenDialog1.FileName<>’’ then //Если имя не пусто, то исполвзоватв его для сохранения файла Memo1.Lines.SaveToFile(SaveDialog1.FileName) else //иначе вызватв обработчик Сохранитв Как SaveAsClick(Sender); end; procedure TForm1.SaveAsClick(Sender: TObject);

Задание
Разработать программу текстового редактора с возможностью выполнения основных функций (открыть, сохранить, закрыть) для работы с файлами, и обработки текста (вырезать, копировать, вставить, выделить всё, очистить) с созданием главного и контекстного меню, в которых продублировать основные функции программы.

Контрольные вопросы
Как обратится к буферу обмена в программном коде?
Какие стандартные диалоговые окна можно использовать в проекте?
Как обратится к выделенному фрагменту текста и какие объекты позволяют это сделать?
Как обратиться к абзацу текста?
В какие объекты можно вывести содержимое текстового файла?

Литература
Культин Н. Б. Основы программирования в Delphi XE. СПб.: БХВ-Петербург, 2011. 416 с.: ил. + CD-ROM (Самоучитель)
Семакин И.Г Основы программирования и баз данных: учебник для студ. учреждений сред. проф. образования. М.: Издательский центр «Академия», 2014. 224 с.
Семакин И.Г., Шестаков А.П. Основы алгоритмизации и программирования: учебник для студ учреждений сред. проф. образования М. : Издательский центр «Академия», 2013. 304 с.









Лабораторная работа №37


13PAGE 15


13PAGE 14315




15