亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? editfm.~pas

?? 利用delphi編程實現文本編輯器的基本工作。如新建、打開等
?? ~PAS
字號:
unit EditFM;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls, ComCtrls,AboutFM, ToolWin, ImgList;

type
  TEditForm = class(TForm)
    MainMenu1: TMainMenu;
    MIFile: TMenuItem;
    MIEdit: TMenuItem;
    MICharacter: TMenuItem;
    MIHelp: TMenuItem;
    MINew: TMenuItem;
    MIOpen: TMenuItem;
    MISave: TMenuItem;
    MISaveAs: TMenuItem;
    MIPrint: TMenuItem;
    MIPrinterSetup: TMenuItem;
    U1: TMenuItem;
    R1: TMenuItem;
    N3: TMenuItem;
    T1: TMenuItem;
    C2: TMenuItem;
    P2: TMenuItem;
    D1: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    F1: TMenuItem;
    L1: TMenuItem;
    MILeft: TMenuItem;
    MICenter: TMenuItem;
    MIRight: TMenuItem;
    N6: TMenuItem;
    W1: TMenuItem;
    F2: TMenuItem;
    N7: TMenuItem;
    N8: TMenuItem;
    Editor: TRichEdit;
    PopupMenu1: TPopupMenu;
    U2: TMenuItem;
    R3: TMenuItem;
    N9: TMenuItem;
    T2: TMenuItem;
    C4: TMenuItem;
    P3: TMenuItem;
    D2: TMenuItem;
    A2: TMenuItem;
    N10: TMenuItem;
    F3: TMenuItem;
    L3: TMenuItem;
    DgOpen: TOpenDialog;
    DgPrint: TPrintDialog;
    DgPrinterSetup: TPrinterSetupDialog;
    DgFont: TFontDialog;
    DgFind: TFindDialog;
    DgReplace: TReplaceDialog;
    N2: TMenuItem;
    MIExit: TMenuItem;
    DgSave: TSaveDialog;
    ToolBar: TToolBar;
    ImageList1: TImageList;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    StatusBar: TStatusBar;
    procedure MIExitClick(Sender: TObject);
    procedure MINewClick(Sender: TObject);
    procedure MISaveAsClick(Sender: TObject);
    procedure MISaveClick(Sender: TObject);
    procedure F2Click(Sender: TObject);
    procedure MIPrintClick(Sender: TObject);
    procedure F1Click(Sender: TObject);
    procedure L1Click(Sender: TObject);
    procedure MIOpenClick(Sender: TObject);
    procedure MIPrinterSetupClick(Sender: TObject);
    procedure T1Click(Sender: TObject);
    procedure C2Click(Sender: TObject);
    procedure P2Click(Sender: TObject);
    procedure D1Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure U1Click(Sender: TObject);
    procedure R1Click(Sender: TObject);
    procedure DgFindFind(Sender: TObject);
    procedure DgReplaceReplace(Sender: TObject);
    procedure W1Click(Sender: TObject);
    procedure MILeftClick(Sender: TObject);
    procedure MICenterClick(Sender: TObject);
    procedure MIRightClick(Sender: TObject);
    procedure N8Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure EditorChange(Sender: TObject);
  private
    { Private declarations }
     PathName: string;
     HasUndo:Boolean;
  public
    { Public declarations }
    procedure CheckTextModified;
  end;

var
  EditForm: TEditForm;

const
  DefaultFileName = '無標題';

implementation

{$R *.dfm}

procedure TEditForm.CheckTextModified;
begin
    if Editor.Modified then  //修改過
    begin
        case Application.MessageBox('文件沒有保存!要保存嗎?',
        '提示',MB_YESNO+MB_ICONQUESTION) of
            IDYES:  //保存文件
                    MISaveClick(Self);   //保存文件
        end;
    end;
end;

procedure TEditForm.MIExitClick(Sender: TObject);
begin
    Close;
end;

procedure TEditForm.MINewClick(Sender: TObject);
begin
    CheckTextModified;  //檢測是否做了修改
    Editor.Lines.Clear;  //清除所有文本
    Editor.Modified:=False;  //把Modified屬性設為False
    PathName:=DefaultFileName;
    Self.Caption:=DefaultFileName;  //把窗口標題設為'無標題'
end;

procedure TEditForm.MISaveAsClick(Sender: TObject);
begin
  DgSave.FileName := DefaultFileName;
  if DgSave.Execute then
  begin
    PathName := DgSave.FileName;  //獲取路徑名
    if DgSave.FilterIndex=1 then  //txt文件
    begin
        Editor.PlainText:=True;
        PathName:=PathName+'.txt';
    end;
    if DgSave.FilterIndex=2 then  //rtf文件
    begin
        Editor.PlainText:=False;
        PathName:=PathName+'.rtf';
    end;
    if DgSave.FilterIndex=3 then  //所有文件
    begin
        Editor.PlainText:=False;
    end;
    Editor.Lines.SaveToFile(PathName); //保存文件
    Editor.Modified := False;  //設置Editor為未改變
    Caption := ExtractFileName(PathName);  //取出文件名,設為窗口標題
    StatusBar.Panels[1].Text:='';
  end;
end;

procedure TEditForm.MISaveClick(Sender: TObject);
begin
  if PathName = DefaultFileName then  //第一次保存
    MISaveAsClick(Sender)
  else
  begin
    Editor.Lines.SaveToFile(PathName); //已經保存過
    Editor.Modified := False;
    StatusBar.Panels[1].Text:='';
  end;
end;

procedure TEditForm.F2Click(Sender: TObject);
begin
  DgFont.Font.Assign(Editor.Font);  //DgFont的初始字體設成Editor的字體
  if DgFont.Execute then
    Editor.SelAttributes.Assign(DgFont.Font);
end;

procedure TEditForm.MIPrintClick(Sender: TObject);
begin
  if DgPrint.Execute then
    Editor.Print(PathName);
end;

procedure TEditForm.F1Click(Sender: TObject);
begin
    DgFind.Execute;
end;

procedure TEditForm.L1Click(Sender: TObject);
begin
    DgReplace.Execute;
end;

procedure TEditForm.MIOpenClick(Sender: TObject);
begin
    DgOpen.Execute;
end;

procedure TEditForm.MIPrinterSetupClick(Sender: TObject);
begin
    DgPrinterSetup.Execute;
end;

procedure TEditForm.T1Click(Sender: TObject);
begin
  Editor.CutToClipboard;
end;

procedure TEditForm.C2Click(Sender: TObject);
begin
  Editor.CopyToClipboard;
end;

procedure TEditForm.P2Click(Sender: TObject);
begin
  Editor.PasteFromClipboard;
end;

procedure TEditForm.D1Click(Sender: TObject);
begin
  Editor.ClearSelection;
end;

procedure TEditForm.N4Click(Sender: TObject);
begin
  Editor.SelectAll;
end;

procedure TEditForm.U1Click(Sender: TObject);
begin
  if not HasUndo then
  begin
    Editor.Undo;
    HasUndo:=True;
  end;  
end;

procedure TEditForm.R1Click(Sender: TObject);
begin
  if HasUndo then
  begin
    Editor.Undo;
    HasUndo:=False;
  end;
end;

procedure TEditForm.DgFindFind(Sender: TObject);
var
  FoundPos,StartPos,FindLen:integer;
  st:TSearchTypes;
begin
    if not (frDown in DgFind.Options) then
    begin
        DgFind.CloseDialog;
        ShowMessage('對不起,目前只能處理向下查找。');
        exit;
    end;
    StartPos:=Editor.SelStart+Editor.SelLength; //StartPos代表初始查找位置
    FindLen:=Length(Editor.Text)-StartPos;  //FindLen代表從StartPos開始到文件末尾的長度
    st:=[];
    if frMatchCase in DgFind.Options then //匹配大小寫
      st:=st+[stMatchCase];
    if frWholeWord in DgFind.Options then  //匹配整個詞
      st:=st+[stWholeWord];
    FoundPos:=Editor.FindText(DgFind.FindText,StartPos,FindLen,st);  //開始查找
    DgFind.CloseDialog;
    if FoundPos <> -1 then   //找到
    begin
        Editor.SelStart:=FoundPos;
        Editor.SelLength:=Length(DgFind.FindText);
    end
    else  //未找到
        ShowMessage('未找到 '+DgFind.FindText);
end;

procedure TEditForm.DgReplaceReplace(Sender: TObject);
var
  FoundPos,StartPos,FindLen:integer;
  st:TSearchTypes;
begin
    if not (frDown in DgReplace.Options) then
    begin
        DgReplace.CloseDialog;
        ShowMessage('對不起,目前只能處理向下替換。');
        exit;
    end;
    StartPos:=Editor.SelStart+Editor.SelLength; //StartPos代表初始查找位置
    FindLen:=Length(Editor.Text)-StartPos;  //FindLen代表從StartPos開始到文件末尾的長度
    st:=[];
    if frMatchCase in DgReplace.Options then //匹配大小寫
      st:=st+[stMatchCase];
    if frWholeWord in DgReplace.Options then  //匹配整個詞
      st:=st+[stWholeWord];
    FoundPos:=Editor.FindText(DgReplace.FindText,StartPos,FindLen,st);  //開始查找
    DgReplace.CloseDialog;  //關閉替換對話框
    if FoundPos <> -1 then   //找到
    begin
      while FoundPos <> -1 do
      begin
        Editor.SelStart:=FoundPos;
        Editor.SelLength:=Length(DgReplace.FindText);
        Editor.SelText:=DgReplace.ReplaceText;  //把文本替換掉

        if not (frReplaceAll in DgReplace.Options) then //如果不是全部替換
           break;

        StartPos:=Editor.SelStart+Length(DgReplace.ReplaceText);
        FindLen:=Length(Editor.Text)-StartPos;  //FindLen代表從StartPos開始到文件末尾的長度
        FoundPos:=Editor.FindText(DgReplace.FindText,
                                  StartPos,FindLen,st);  //繼續查找
      end;
        ShowMessage('替換完畢!');
    end
    else  //未找到
        ShowMessage('未找到 '+DgReplace.FindText);

end;

procedure TEditForm.W1Click(Sender: TObject);
begin
  with Editor do
  begin
    WordWrap := not WordWrap; //讓WordWrap取反
    if WordWrap then  //自動換行
      ScrollBars := ssVertical  //Editor只有豎直滾動條
    else
      ScrollBars := ssBoth;
    W1.Checked := WordWrap; //設置自動換行菜單項左邊的對勾
  end;
end;


procedure TEditForm.MILeftClick(Sender: TObject);
begin
  MILeft.Checked := True;
  MICenter.Checked := False;
  MIRight.Checked := False;
  Editor.Paragraph.Alignment := taLeftJustify;
end;

procedure TEditForm.MICenterClick(Sender: TObject);
begin
  MILeft.Checked := False;
  MICenter.Checked := True;
  MIRight.Checked := False;
  Editor.Paragraph.Alignment := taCenter; //居中
end;

procedure TEditForm.MIRightClick(Sender: TObject);
begin
  MILeft.Checked := False;
  MICenter.Checked := False;
  MIRight.Checked := True;
  Editor.Paragraph.Alignment := taRightJustify //居右
end;

procedure TEditForm.N8Click(Sender: TObject);
begin
    AboutForm.ShowModal; 
end;

procedure TEditForm.FormCreate(Sender: TObject);
begin
  PathName := DefaultFileName;
end;

procedure TEditForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    CheckTextModified;
end;

procedure TEditForm.EditorChange(Sender: TObject);
begin
    if Editor.Modified then
      StatusBar.Panels[1].Text:='已修改'
    else
      StatusBar.Panels[1].Text:='';
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩不卡一二三区| 日韩国产欧美在线观看| 色天天综合色天天久久| 性欧美疯狂xxxxbbbb| 日韩一区二区免费高清| 国产一区美女在线| 国产精品久久久久久久久晋中 | 国产成a人无v码亚洲福利| 国产精品乱人伦中文| 欧洲亚洲精品在线| 精品一区二区三区在线播放视频| 久久夜色精品国产噜噜av| 国产福利不卡视频| 亚洲综合图片区| 久久久久久久久97黄色工厂| 91黄色激情网站| 国产一区二区久久| 亚洲国产精品精华液网站| 久久女同精品一区二区| 91精品福利视频| 黄页网站大全一区二区| 亚洲天堂成人网| 久久精品在线观看| 欧美日韩国产大片| 91免费视频网址| 黑人巨大精品欧美黑白配亚洲| 亚洲黄色性网站| 久久精品视频在线免费观看| 在线观看精品一区| 成人黄色大片在线观看| 一二三四社区欧美黄| 欧美一区二区三区免费视频| 蜜臀av性久久久久蜜臀aⅴ| 精品成人一区二区三区| 色天天综合色天天久久| 久久精品噜噜噜成人av农村| 欧美国产激情二区三区| 99久久综合国产精品| 国产精品你懂的在线| 欧美日韩一区成人| 亚洲一区二区偷拍精品| 国产网红主播福利一区二区| 91一区二区三区在线观看| 日韩成人免费看| 在线播放国产精品二区一二区四区| 韩国女主播一区二区三区| 日韩精品一区二区三区四区| 欧美色倩网站大全免费| 国产大陆精品国产| 一区二区三区视频在线观看| 欧美日韩一区二区三区高清| 国产老妇另类xxxxx| 亚洲国产综合人成综合网站| 91精品国产综合久久香蕉麻豆 | 成人午夜视频网站| 国内外成人在线视频| 亚洲综合免费观看高清在线观看| 国产日韩欧美制服另类| 欧美电影精品一区二区| 色狠狠色噜噜噜综合网| 国产999精品久久| 婷婷综合久久一区二区三区| 亚洲一区影音先锋| 国产精品国产自产拍高清av王其| 日韩一区二区三区视频在线观看| 国产美女在线精品| 三级影片在线观看欧美日韩一区二区 | 亚洲午夜久久久| 亚洲免费av高清| 久久综合资源网| 国产精品国产三级国产普通话蜜臀 | 美女爽到高潮91| 婷婷国产在线综合| 亚洲一级二级在线| 亚洲国产精品一区二区www| 精品国产凹凸成av人网站| 91精品国产一区二区三区| 色丁香久综合在线久综合在线观看| 男女男精品网站| 美国十次了思思久久精品导航| 亚洲尤物视频在线| 日韩av一区二区在线影视| 日韩二区在线观看| 国产不卡在线播放| 99热精品一区二区| 欧美日韩1234| 欧美精品一区二区三区很污很色的| 精品国产乱码久久久久久图片| 国产精品毛片a∨一区二区三区| 亚洲伊人色欲综合网| 一区二区久久久| 久久99在线观看| 日本精品一区二区三区高清| 欧美日韩一区二区三区免费看| 日韩欧美视频一区| 国产欧美精品一区aⅴ影院 | 五月激情综合网| 人人精品人人爱| 欧美色爱综合网| 欧美精品v国产精品v日韩精品| 精品国产成人系列| 久久精品夜色噜噜亚洲aⅴ| 国产精品免费人成网站| 亚洲激情自拍偷拍| 国产aⅴ综合色| 日韩一区二区三区三四区视频在线观看| 精品久久久久久久久久久久包黑料| 国产欧美一区二区精品性色超碰| 亚洲色欲色欲www| 国产a区久久久| 精品精品国产高清a毛片牛牛 | 99久久国产综合精品色伊| 福利91精品一区二区三区| 91精品中文字幕一区二区三区| 精品乱码亚洲一区二区不卡| 国产欧美日韩精品a在线观看| 欧美精品久久天天躁| 亚洲午夜久久久久久久久电影网| 亚洲成人福利片| 91女厕偷拍女厕偷拍高清| 成人欧美一区二区三区小说 | 日本不卡的三区四区五区| 精品视频1区2区| 亚洲国产日日夜夜| 欧美色男人天堂| 亚洲视频在线一区| av网站免费线看精品| 国产午夜三级一区二区三| 亚洲一线二线三线视频| 国产成人午夜视频| 欧美精品一区二区三区很污很色的 | 国产麻豆91精品| 久久久99免费| 日日骚欧美日韩| 在线观看日韩一区| ...xxx性欧美| 国产成+人+日韩+欧美+亚洲| 国产精品美女一区二区三区| 午夜精品视频在线观看| 日韩精品中文字幕在线一区| 亚洲猫色日本管| 欧美日本韩国一区二区三区视频| 日韩**一区毛片| 欧美精品色综合| 九色porny丨国产精品| 精品1区2区在线观看| www.欧美色图| 国产女主播一区| 色婷婷综合久久久中文字幕| 日韩伦理免费电影| 欧美日韩免费一区二区三区 | 91蝌蚪porny| 男人操女人的视频在线观看欧美 | 国产拍欧美日韩视频二区| jiyouzz国产精品久久| 国产精品视频一二| 日韩免费高清视频| 欧美在线免费观看亚洲| 亚洲成人免费观看| 17c精品麻豆一区二区免费| 免费观看一级特黄欧美大片| 国产亚洲精品bt天堂精选| 捆绑紧缚一区二区三区视频| 在线精品视频一区二区三四| 国产日韩欧美在线一区| 日av在线不卡| 在线精品观看国产| 日韩制服丝袜av| 色系网站成人免费| 国产精品 欧美精品| 91麻豆免费视频| 午夜一区二区三区在线观看| 亚洲图片欧美激情| 日本不卡一二三| 国产欧美综合在线| 日本高清不卡在线观看| 成人国产精品免费观看| 一区二区三区日韩精品| 欧美人牲a欧美精品| 91在线你懂得| 国产69精品久久99不卡| 裸体在线国模精品偷拍| 国产精品久久久久久久久动漫 | 91老师片黄在线观看| 日本一区中文字幕| 国产欧美日韩精品a在线观看| 裸体一区二区三区| 秋霞午夜av一区二区三区| 国产日产欧美一区| 精品国产免费一区二区三区四区| 成人一区二区三区在线观看| 夜夜精品视频一区二区| 日韩免费高清视频| 欧美mv日韩mv国产网站app| 在线影视一区二区三区| 久热成人在线视频| 免费久久精品视频| 午夜视频在线观看一区| 午夜精品免费在线| 免费高清视频精品|