delphi 中的 RichEdit savaDialog openDialog fontDialog 的初次使用

    技术2022-05-19  26

    unit Unit1;

    interface

    uses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, ComCtrls;

    type  TForm1 = class(TForm)    RichEdit: TRichEdit;    btn_copy: TButton;    btn_cut: TButton;    btn_paste: TButton;    btn_del: TButton;    btn_select: TButton;    btn_canel: TButton;    btn_new: TButton;    btn_save: TButton;    btn_open: TButton;    btn_font: TButton;    OpenDig: TOpenDialog;    SaveDlog: TSaveDialog;    FontDialog: TFontDialog;    procedure btn_copyClick(Sender: TObject);    procedure btn_cutClick(Sender: TObject);    procedure btn_pasteClick(Sender: TObject);    procedure btn_delClick(Sender: TObject);    procedure btn_selectClick(Sender: TObject);    procedure btn_canelClick(Sender: TObject);    procedure FormCreate(Sender: TObject);    procedure RichEditSelectionChange(Sender: TObject);    procedure btn_newClick(Sender: TObject);    procedure btn_openClick(Sender: TObject);    procedure btn_saveClick(Sender: TObject);    procedure btn_fontClick(Sender: TObject);  private    { Private declarations }  public    { Public declarations }  end;

    var  Form1: TForm1;

    implementation

    {$R *.dfm}

    procedure TForm1.btn_copyClick(Sender: TObject);begin      RichEdit.CopyToClipboard;      RichEdit.SetFocus;end;

    procedure TForm1.btn_cutClick(Sender: TObject);begin          RichEdit.CutToClipboard;          RichEdit.SetFocus;end;

    procedure TForm1.btn_pasteClick(Sender: TObject);begin         RichEdit.PasteFromClipboard;         RichEdit.SetFocus;end;

    procedure TForm1.btn_delClick(Sender: TObject);begin          RichEdit.SelText := '';          RichEdit.SetFocus;end;

    procedure TForm1.btn_selectClick(Sender: TObject);begin          RichEdit.HideSelection := false;          RichEdit.SelectAll;          RichEdit.SetFocus;end;

    procedure TForm1.btn_canelClick(Sender: TObject);begin           RichEdit.Undo;           RichEdit.SetFocus;end;

    procedure TForm1.FormCreate(Sender: TObject);begin      if RichEdit.SelLength = 0      then begin              btn_copy.Enabled := false;              btn_cut.Enabled := false;              btn_del.Enabled := false;           end      else begin              btn_copy.Enabled := true;              btn_cut.Enabled := true;              btn_del.Enabled := true;           endend;

    procedure TForm1.RichEditSelectionChange(Sender: TObject);begin      if RichEdit.SelLength = 0      then begin              btn_copy.Enabled := false;              btn_cut.Enabled := false;              btn_del.Enabled := false;           end      else begin              btn_copy.Enabled := true;              btn_cut.Enabled := true;              btn_del.Enabled := true;           endend;

    procedure TForm1.btn_newClick(Sender: TObject);        var i:word;begin        if RichEdit.Modified        then begin               i := messagedlg('文件被修改了,是否保存',mtconfirmation,[mbyes,mbno,mbcancel],1);                 if i = mryes then                   if   SaveDlog.Execute then begin                                                RichEdit.Lines.SaveToFile(saveDlog.FileName);                                                RichEdit.Text :='';                                                RichEdit.Modified := false;                                              end;                   if i=mrno then                     begin                        RichEdit.Text := '';                        RichEdit.Modified := false;                     end;              end        else begin              RichEdit.Text := '';              RichEdit.Modified := false;              end;

    end;

    procedure TForm1.btn_openClick(Sender: TObject);      var i:word;begin      if RichEdit.Modified then          begin            i:=messagedlg('文件被修改,是否先保存。。',mtconfirmation,[mbyes,mbno,mbcancel],1);          if i = mryes then                         if SaveDlog.Execute then                              begin                                   RichEdit.Lines.SaveToFile(SaveDlog.FileName);                                   if OpenDig.Execute then                                       RichEdit.Lines.LoadFromFile(OpenDig.FileName);                                   RichEdit.Modified := false;                              end;          if i = mrno then                          if OpenDig.Execute then                          begin                              RichEdit.Lines.LoadFromFile(OpenDig.FileName);                              RichEdit.Modified := false;                          end;          end      else          begin             if OpenDig.Execute then                  RichEdit.Lines.LoadFromFile(OpenDig.FileName);                  RichEdit.Modified := false;          end;end;

    procedure TForm1.btn_saveClick(Sender: TObject);begin    if RichEdit.Modified then         if SaveDlog.Execute then             begin               RichEdit.Lines.SaveToFile(SaveDlog.FileName);               RichEdit.Modified := false;             end;  end;

    procedure TForm1.btn_fontClick(Sender: TObject);begin       FontDialog.Font.Assign(RichEdit.DefAttributes);       if FontDialog.Execute then             RichEdit.SelAttributes.Assign(FontDialog.Font);end;

    end.


    最新回复(0)