текстовый редактор на delphi
Написать программу – текстовый редактор по функциональности аналогичную программе «Блокнот». Программа должна иметь возможность открывать, изменять, сохранять текстовый файл. Изменять параметры шрифта для всего текста в целом.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Controls, Forms,
Dialogs, Menus, ComCtrls, StdCtrls;
type
TForm1 = class (TForm)
Memo1: TMemo;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
N9: TMenuItem;
N12: TMenuItem;
FontDialog1: TFontDialog;
N16: TMenuItem;
N17: TMenuItem;
ColorDialog1: TColorDialog;
N18: TMenuItem;
N19: TMenuItem;
HeaderControl1: THeaderControl;
FindDialog1: TFindDialog;
N14: TMenuItem;
procedure N2Click (Sender: TObject);
procedure N8Click (Sender: TObject);
procedure N9Click (Sender: TObject);
procedure N7Click (Sender: TObject);
procedure N4Click (Sender: TObject);
procedure N12Click (Sender: TObject);
procedure N5Click (Sender: TObject);
procedure N6Click (Sender: TObject);
procedure N19Click (Sender: TObject);
procedure N16Click (Sender: TObject);
procedure N18Click (Sender: TObject);
procedure FormCreate (Sender: TObject);
procedure N14Click (Sender: TObject);
procedure N11Click (Sender: TObject);
procedure FormClose (Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.N2Click (Sender: TObject);
var rez:tmodalresult;
begin
if memo1.Modified then
begin
rez:=messagedlg ('Сохранить проект ?'#13#10,mtconfirmation,[mbOK,mbCancel,mbNO],1);
Case rez of
mrOK:begin
if SaveDialog1.Execute then
memo1.Lines.SaveToFile (SaveDialog1.FileName);
form1.Close;
end;
mrCancel:begin
memo1.SetFocus;
end;
mrNO:begin
form1.Close;
end;
end;
end
else
Form1.Close;
end;
procedure TForm1.N8Click (Sender: TObject);
begin
if OpenDialog1.Execute then
memo1.Lines.LoadFromFile (OpenDialog1.FileName);
end;
procedure TForm1.N9Click (Sender: TObject);
begin
if SaveDialog1.Execute then
memo1.Lines.SaveToFile (SaveDialog1.FileName);
memo1.Modified:=false;
end;
procedure TForm1.N7Click (Sender: TObject);
begin
memo1.clear;
end;
procedure TForm1.N4Click (Sender: TObject);
begin
memo1.SelText;
memo1.CopyToClipboard;
end;
procedure TForm1.N12Click (Sender: TObject);
begin
memo1.SelectAll;
end;
procedure TForm1.N5Click (Sender: TObject);
begin
memo1.CutToClipboard;
end;
procedure TForm1.N6Click (Sender: TObject);
begin
memo1.PasteFromClipboard;
end;
procedure TForm1.N19Click (Sender: TObject);
begin
if ColorDialog1.Execute then
memo1.Color:=ColorDialog1.Color;
end;
procedure TForm1.N16Click (Sender: TObject);
begin
if FontDialog1.Execute then
memo1.Font:=FontDialog1.Font;
end;
procedure TForm1.N18Click (Sender: TObject);
begin
if ColorDialog1.Execute then
memo1.Font.Color:=ColorDialog1.Color;
end;
procedure TForm1.FormCreate (Sender: TObject);
begin
Form1.Caption:='Блокнот'
end;
procedure TForm1.N14Click (Sender: TObject);
begin
memo1.HideSelection:=false;
if FindDialog1.Execute then
if Pos (FindDialog1.FindText,memo1.Lines.Text) <> 0 then
begin
memo1.SelStart:=Pos (FindDialog1.FindText,memo1.Lines.Text) -1;
memo1.SelLength:=length (FindDialog1.FindText);
end;
end;
procedure TForm1.N11Click (Sender: TObject);
begin
MessageDlg ('эту прожку сделал Я. Я в группе psz-02-07 под номером 21'#13#10,mtconfirmation,[mbOK],0);
end;
procedure TForm1.FormClose (Sender: TObject; var Action: TCloseAction);
var rez:tmodalresult;
begin
if memo1.Modified then
begin
rez:=messagedlg ('Сохранить проект ?'#13#10,mtconfirmation,[mbOK,mbCancel,mbNO],1);
Case rez of
mrOK:begin
if SaveDialog1.Execute then
memo1.Lines.SaveToFile (SaveDialog1.FileName);
end;
mrCancel:begin
Action:= caNone; //отмена закрытия
memo1.SetFocus;
end;
end;
end;
end;
end.