
3.Задача перегляду та редагування тексту
Мета роботи: Створити форму «Перегляд і редагування файлів» з вікном для виведення тексту. Задати можливості відкриття, перегляду, редагування та збереження текстів.
Об’єкти: форма (Form), Кнопка (Button із сторінки Standard), Поле для тексту (Memo), Компонента з функціями для відкриття файлів (OpenDialogs), Компонента з функціями для збереження файлів SaveDialogs.
Хід роботи
1)Створюємо форму. Задаємо її назву.
При запуску Delphi, програмою була створена нова форма Form1, щоб змінити її назву необхідно в інспекторі об’єктів знайти рядок Caption, де ввести необхідний текст.
2)Розміщуємо на формі всі необхідні компоненти з палітри компонентів.
Рис.8. «Форма для створення програми з необхідними компонентами».
3)Задаємо властивості всіх компонентів в інспекторі об’єктів:
• Задаємо заголовок на формі;
• Наносимо підписи на всі кнопки. Для кнопок Редагувати та Зберегти файл робимо неактивними під час запуску програми (властивість Enabled присвоюємо False);
• Для компоненти Memo з допомогою властивості Lines стираємо зайвий текст та забираємо можливість редагування тексту (властивості ReadOnly присвоюємо True) (Рис.9.);
Рис.9. «Діалогове вікно «Object Inspector»»
• Для нанесення підписів на діалогові вікна Відкриття та Збереження файлу компонентам OpenDialog та SaveDialog використовуємо властивість Title. За допомогою властивості InitialDir вказуємо шлях, де будуть збережені вхідні та вихідні файли. У властивості Filter описуємо файли, з якими буде працювати наша програма. Приведемо приклад заповнення даних(Рис.10.):
Рис.10. «Діалогове вікно «Filter Editor»»
4)Запрограмуємо кнопку Відкрити файл таким чином, щоб при натисканні на неї підпис на формі змінювався на назву файлу, в полі Mеmо з’являвся текст файлу, а після відкриття файлу кнопка Редагувати стала активною.
Рис.10. «Вигляд форми з відкритим текстовим файлом»
5)Запрограмуємо кнопку «Зберегти файл» таким чином, щоб при натисканні на неї можна було зберегти в новому файлі всі внесені зміни.
Вигляд програмного коду:
unit Unit ;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Memo1: TMemo;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
procedure Button1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Privatedeclarations }
public
{ Publicdeclarations }
end;
var
Form1: TForm1;
isopen:Boolean;
s:string;
implementation
{$R *.dfm}
procedure TForm1.Button4Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.ReadOnly:=True;
isopen:=False;
if OpenDialog1.Execute andFileExists(OpenDialog1.FileName)then
begin S:=OpenDialog1.FileName;
Form1.Caption:=s;
Memo1.Lines.LoadFromFile(s);
end;
Button2.Enabled:=true;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Memo1.ReadOnly:=False;
Button3.Enabled:=True;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if SaveDialog1.Execute andFileExists(SaveDialog1.FileName)then
begin S:=SaveDialog1.FileName;
Form1.Caption:=S;
Memo1.Lines.SaveToFile(S);
end;
end;
end.
Висновок: В результаті виконання даної лабораторної роботи ми створили форму «Перегляд та редагування файлів» з вікном для виведення тексту. Задавали можливості відкриття, перегляду, редагування та збереження текстів.