Создание графического улучшенного интерфейса.

1. Создайте главное меню с функциями Добавить, Добавить элемент, Удалить, Сохранить, Изменить заголовок.

2. Улучшите графическое представление программы.

Лабораторная работа 3

Рейтинг 0,8 баллов

Тема: Назначение и объявление файла. Вывод в файл. Открытие файла для вывода. Ошибки открытия файла. Чтение данных из файла

Цель работы:

Ознакомиться с функциями и процедурами для работы с файлами. Также научиться создавать текстовые файлы.

Основная методика создания приложения

Задание 1. Создание нового или замещение существующего файла

1. Создайте папку student на диске С и сохраните ваш проект в эту папку.

2. Разместите компоненты, так как показано на рисунке 30

Создание графического улучшенного интерфейса. - student2.ru

Рисунок 30 – Окно будущей программы

3. Для кнопки Записать наберите следующий программный код в событии OnClik.

procedureTForm1.Button1Click(Sender: TObject);

Var

f: TextFile; // файл

fName: String[80]; // имя файла

i: integer;

Begin

fName := Editl.Text;

AssignFile(f, fName);

Rewrite(f); // открыть для перезаписи

// запись в файл

for i: =0 to Memo1.Lines.Count do // строки нумеруются с нуля

writeln(f, Memo1.Lines[i]);

CloseFile(f); // закрыть файл

MessageDlg('Данные ЗАПИСАНЫ в файл ',mtInformation,[mbOk],0);

End;

4. Протестируйте приложение, запустив его. Проверьте работу кнопки Записать.

5. В Editl введите название создаваемого файла и его месторасположение. Например введите С:\student\text1.txt

6. В Memol введите любой текст.

7. Нажмите кнопку Записать. В случае если данные записаны удачно должно появится сообщение «Данные ЗАПИСАНЫ в файл»

8. Откройте диск С папку student, просмотрите содержимое файла text1.txt

Задание 2. Чтение из файла

1. Для кнопки Добавить наберите следующий программный код

procedure TForm1.Button2lick(Sender: TObject);

var

f: TextFile; // файл

fName: String[80]; // имя файла

buf: String[80]; // буфер для чтения из файла

begin

fName := Edit1.Text;

AssignFile(f, fName);

Reset(f); // открыть для чтения

if IOResult <> 0 then

begin

MessageDlg('Ошибка доступа к файлу ' + fName, mtError,[mbOk],0);

exit;

end; // чтение из файла

while not EOF(f) do

begin

readln(f, buf); // прочитать строку из файла

Memo1.Lines.Add(buf); // добавить строку в поле Memo1

end;

CloseFile(f); // закрыть файл

end;

2. Снова протестируйте ваше приложение.

3. Внесите новые данные и сохраните их в вашем файле.

Создание графического улучшенного интерфейса. - student2.ru

Файл — это именованная структура данных, представляющая собой последовательность элементов данных одного типа, причем количество элементов последовательности практически не ограничено. В первом приближении файл можно рассматривать как массив переменной длины неограниченного размера.

Как и любая структура данных (переменная, массив) программы, файл должен быть объявлен в разделе описания переменных. При объявлении файла указывается тип элементов файла.

Создание графического улучшенного интерфейса. - student2.ru 3. Самостоятельная работа

Задание. Усовершенствование программы

1. Добавьте на форму кнопку Очистить, которая очищает содержимое компонентов Memo1 и Edit1 посредством метода Clear.

2. Сделайте так, чтобы данные в Memo1 вносились шрифтом Arial, курсивом и размером 16

Практическая работа №6 «Многострочные окна редактирования Memo и RichEdit»

1. Создание графического улучшенного интерфейса. - student2.ru Создайте новое приложение. Поместите на форму компонент Memo, а также остальные компоненты и задайте их свойства, как показано на рисунке. Кнопки Сохранить и Открыть будут соответственно сохранять введенный в Memo текст и загружать текст из файла. Л- выравнивание текста по левому краю, Ц – по центру, П – по правому, Х – очистить содержимое. В поле Edit будет вводиться размер шрифта. В заголовке формы будет выводиться номер строки на которой находится курсор и общее количество строк.

2. Для очистки содержимого компонента Memo, используйте свойство Lines.

3. Процедура для кнопки Сохранить: Memo1.Lines.SaveToFile('c:\memo.txt'); Текст будет сохраняться на диск С в файл memo.txt. Можно указать любой другой путь и файл.

4. Процедура для кнопки Открыть: Memo1.LoadFromFile('c:\memo.txt');

5. Процедура для кнопки Л: Memo1.Alignment:=taLeftJustify; Процедуры для кнопок Ц и П напишите самостоятельно.

6. Процедура для кнопки Х: Memo1.Lines.Clear;

7. Для Edit1 напишем процедуру OnChange, которая происходит при изменении содержимого поля: if edit1.text<>'' then Memo1.Font.Size:=strtoint(Edit1.text);

8. Для вывода номера строки и общее количество строк в заголовок окна напишем процедуру OnClick для поля Memo: Form1.Caption:=inttostr(memo1.CaretPos.y+1)+'/'+inttostr(Memo1.Lines.Count);

9. Запустите программу и проверьте все ее функции.

10. Задание для самостоятельного выполнения:

А) На форму добавить поле Edit, в которое будет вводиться имя файла, под которым будет сохраняться текст и открываться.

Б) Измените код программы так, чтобы в заголовке формы выводились: номер позиции/ номер строки/общее количество строк.

Покажите работу преподавателю.

11. Удалите поле Memo с формы, а на его место поместите компонент RichEdit.

12. Измените все команды так, чтобы они применялись для поля RichEdit. При этом следует учитывать, свойство Alignment является подсвойством свойства Paragraph. Свойство Font отсутствует, вместо него есть свойство SelAttributes.

13. Покажите работу преподавателю.

Практическая работа № 7 «Системные диалоги»

Создание графического улучшенного интерфейса. - student2.ru Создадим текстовый редактор, аналогичный, тому, который был создан в предыдущей практической работе. Только открытие, сохранение файла, выбор шрифта, цвета будет осуществляться через диалоговые окна.

1. Разместите на форме компоненты, в соответствии с рисунком. Вместо обычных кнопок будем использовать кнопки BitBtn, которые находятся на странице Additional.

2. Задайте выравнивание компонентов, надписи, всплывающие подсказки для кнопок: Открыть файл, Сохранить файл, Изменить шрифт, Цвет фона. Изображение для кнопок задается в свойстве Glyph. Рисунки можно найти по пути: C:\Program Files\Common Files\Borland Shared\Images\Buttons.

3. Создание графического улучшенного интерфейса. - student2.ru Перенесите на форму компоненты SaveDialog, OpenDialog, FontDialog, ColorDialog со страницы Dialogs. Это невизуальные компоненты, поэтому могут размещаться в любом месте формы.

4. Для компонента OpenDialog1 зададим свойство Title (заголовок диалогового окна открытия файла): “Выберите файл для открытия”.

5. Для компонента OpenDialog1 задайте два фильтра:

Создание графического улучшенного интерфейса. - student2.ru

6. Напишем процедуру для кнопки открытия файла:

If OpenDialog1.Execute then Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

7. Аналогичная команда для изменения шрифта:

if FontDialog1.Execute then Memo1.Font:=FontDialog1.Font;

1. Создайте два фильтра для диалога сохранения файла: Текстовые файлы и Все файлы, а также соответствующий заголовок.

2. Самостоятельно напишите процедуры для сохранения файла и изменения цвета компонента Memo.

3. В нижней панели должен отображаться размер выбранного шрифта. Покажите работу преподавателю.

Создайте аналогичный текстовый редактор используя вместо Memo компонент RichEdit.

Наши рекомендации