📄 unit3.~pas
字号:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtActns, StdActns, ActnList, Menus, ComCtrls, StdCtrls,
ExtCtrls, ToolWin, ImgList, ExtDlgs,unit4;
type
Ttext = class(TForm)
Panel1: TPanel;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
bnew: TToolButton;
bopen: TToolButton;
bsave: TToolButton;
ToolButton5: TToolButton;
bprint: TToolButton;
brun: TToolButton;
bpage: TToolButton;
ToolButton9: TToolButton;
bundo: TToolButton;
bcut: TToolButton;
bcopy: TToolButton;
bpaste: TToolButton;
bdelete: TToolButton;
ToolButton15: TToolButton;
StatusBar1: TStatusBar;
bbold: TToolButton;
bintic: TToolButton;
bunderline: TToolButton;
bcolor: TToolButton;
ToolButton20: TToolButton;
bleft: TToolButton;
bcenter: TToolButton;
bright: TToolButton;
ActionList1: TActionList;
MainMenu1: TMainMenu;
PopupMenu1: TPopupMenu;
RadioGroup1: TRadioGroup;
DateTimePicker1: TDateTimePicker;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
ye1: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
ge1: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
N24: TMenuItem;
N25: TMenuItem;
N26: TMenuItem;
N27: TMenuItem;
N28: TMenuItem;
N29: TMenuItem;
N30: TMenuItem;
undo: TEditUndo;
cut: TEditCut;
copy: TEditCopy;
paste: TEditPaste;
all: TEditSelectAll;
delete: TEditDelete;
bold: TRichEditBold;
intic: TRichEditItalic;
underline: TRichEditUnderline;
center: TRichEditAlignCenter;
right: TRichEditAlignRight;
richedit1: TRichEdit;
left: TRichEditAlignLeft;
FontDialog1: TFontDialog;
ColorDialog1: TColorDialog;
Edit1: TEdit;
Timer1: TTimer;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
ToolButton24: TToolButton;
bfont: TToolButton;
Edit2: TEdit;
Edit3: TEdit;
Label4: TLabel;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
PrintDialog1: TPrintDialog;
PrinterSetupDialog1: TPrinterSetupDialog;
FindDialog1: TFindDialog;
ReplaceDialog1: TReplaceDialog;
PageSetupDialog1: TPageSetupDialog;
ImageList1: TImageList;
N31: TMenuItem;
N32: TMenuItem;
N33: TMenuItem;
open: TAction;
font: TAction;
save: TAction;
N34: TMenuItem;
N35: TMenuItem;
N36: TMenuItem;
N37: TMenuItem;
N38: TMenuItem;
N39: TMenuItem;
N40: TMenuItem;
N41: TMenuItem;
N42: TMenuItem;
N43: TMenuItem;
N44: TMenuItem;
N45: TMenuItem;
find: TSearchFind;
finda: TSearchFindNext;
replace: TSearchReplace;
print: TFilePrintSetup;
run: TFileRun;
exit: TFileExit;
page: TFilePageSetup;
OpenPictureDialog1: TOpenPictureDialog;
N46: TMenuItem;
color: TAction;
bcolor1: TColorSelect;
SavePictureDialog1: TSavePictureDialog;
N47: TMenuItem;
Action1: TAction;
savep: TSavePicture;
opent: TOpenPicture;
print1: TPrintDlg;
procedure Timer1Timer(Sender: TObject);
procedure openExecute(Sender: TObject);
procedure saveexecute(sender: tobject);
procedure fontExecute(Sender: TObject);
procedure N24Click(Sender: TObject);
procedure bcolorClick(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
procedure N40Click(Sender: TObject);
procedure DateTimePicker1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N46Click(Sender: TObject);
procedure N33Click(Sender: TObject);
procedure colorExecute(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
text: Ttext;
implementation
var
ti,tq:string;
{$R *.dfm}
procedure Ttext.Timer1Timer(Sender: TObject);
var
h,lie :integer;
xq,a,rq,ti:string;
s1,s2,l,i:integer;
begin
h:=richedit1.CaretPos.Y+1;
lie:=richedit1.CaretPos.X +1;
case dayofweek(date()) of
1:xq:='星期天';
2:xq:='星期一';
3:xq:='星期二';
4:xq:='星期三';
5:xq:='星期四';
6:xq:='星期五';
7:xq:='星期六';
end;
statusbar1.Panels[1].Text :=xq;
statusbar1.Panels[0].Text := '您所在的位置是'+ inttostr(h)+'行'+inttostr(lie)+'列';
//ti:=inttostr(strtoint(copy(formatdatetime('HHMMSS',now),1,4))-strtoint(ti));
statusbar1.Panels[2].Text:='您已使用哈哈日记本--番茄&蘑菇 +ti';
rq:=datetostr(datetimepicker1.Date);
form1.Caption:='欢迎您使用哈哈记事本';
//统计字数
begin
s1:=0; s2:=0;
a:=RichEdit1.Text;
l:=length(a);
for i:=1 to l do
if (ord(a[i])>=13) and (ord(a[i])<=126) then
s1:=s1+1
else
if ord(a[i])>=127 then
s2:=s2+1;
edit1.Text :=inttostr(s1-57);
edit2.Text := inttostr((s2 div 2)-3);
edit3.Text :=inttostr(s1-57+(s2 div 2)-3);
end;
end;
//打开文件
procedure Ttext.openExecute(Sender: TObject);
begin
if opendialog1.Execute then
richedit1.Lines.LoadFromFile(opendialog1.FileName );
end;
// 改变字体和大小
procedure Ttext.fontExecute(Sender: TObject);
begin
if fontdialog1.Execute then
richedit1.SelAttributes.Name :=fontdialog1.Font.Name;
richedit1.SelAttributes.Color :=fontdialog1.Font.Color;
richedit1.SelAttributes.Size:=fontdialog1.Font.Size;
richedit1.SelAttributes.Style :=fontdialog1.Font.Style;
end;
//保存文件
procedure Ttext.saveExecute(Sender: TObject);
begin
if savedialog1.Execute then
richedit1.Lines.SaveToFile(savedialog1.FileName);
end;
//改变背景色
procedure Ttext.N24Click(Sender: TObject);
begin
if colordialog1.Execute then
richedit1.Color:=colordialog1.Color;
end;
//改变字体的颜色
procedure Ttext.bcolorClick(Sender: TObject);
begin
if colordialog1.Execute then
richedit1.SelAttributes.Color:=colordialog1.Color;
end;
//实现选择天气
procedure Ttext.RadioGroup1Click(Sender: TObject);
begin
case radiogroup1.ItemIndex of
0: tq:='晴天';
2:tq:='阴天';
1:tq:='下雨';
3:tq:='飞雪';
end;
//if ti=copy(richedit1.Lines.Text,1,2)='※' then
if richedit1.Lines.Text<>'' then
begin
richedit1.Lines.Delete(0);
richedit1.Lines.Insert(0,' '+datetostr(datetimepicker1.Date)+' '+'※'+ ' '+ tq);
end
else
richedit1.Lines.Insert(0,' '+datetostr(datetimepicker1.Date)+' '+'※'+' '+ tq);
edit1.Text :=inttostr(0);
edit2.Text :=inttostr(0);
end;
//实现简单的计算数学表达式
procedure Ttext.N40Click(Sender: TObject);
var
t1,t2,t3,s:string;
i,l:integer;
a,b:real;
begin
try
s:=RichEdit1.SelText;
l:=length(s);
t1:='';
t2:='';
t3:='';
for i:=1 to l do
if ((S[i]<>'+') and (s[i]<>'-') and (s[i]<>'*') and (s[i]<>'/')) then
t1:=t1+S[i]
else
begin
t2:=S[i];
break
end;
// t3:=copy(s,i+1,l-i);
a:=strtofloat(t1);
b:=strtofloat(t3);
case t2[1] of
'+': label4.Caption:=floattostr(a+b);
'-': label4.Caption:=floattostr(a-b);
'*': label4.Caption:=floattostr(a*b);
'/': label4.Caption:=floattostr(a/b);
end;
except
showmessage('请选中数学表达式进行计算!');
end;
end ;
//实现选择日期
procedure Ttext.DateTimePicker1Change(Sender: TObject);
begin
case radiogroup1.ItemIndex of
1: tq:='晴天';
2:tq:='阴天';
3:tq:='下雨';
4:tq:='飞雪';
end;
if richedit1.Text<>'' then
// if copy(RichEdit1.Lines.Text,1,2)='※' then
begin
RichEdit1.Lines.Delete(0);
RichEdit1.Lines.Insert(0,' '+datetostr(DateTimePicker1.Date)+' '+'※'+' '+tq);
end
else
begin
RichEdit1.Lines.Insert(0,' '+datetostr(DateTimePicker1.Date)+' '+'※'+' '+tq);
edit1.Text :=inttostr(0);
edit2.Text :=inttostr(0);
end;
end;
//初始化时加载的内容
procedure Ttext.FormCreate(Sender: TObject);
begin
DateTimePicker1.Date:=date();
RadioGroup1.ItemIndex:=0;
form1.Caption:='欢迎您使用哈哈日记本!';
//ti:=copy(formatdatetime('HHMMSS',now),1,4);
end;
procedure Ttext.N46Click(Sender: TObject);
var
s1,s2,l,i:integer;
a:string;
begin
s1:=0; s2:=0;
a:=RichEdit1.Text;
l:=length(a);
for i:=1 to l do
if (ord(a[i])>=13) and (ord(a[i])<=126) then
s1:=s1+1
else
if ord(a[i])>=127 then
s2:=s2+1;
edit1.Text :=inttostr(s1);
edit2.Text := inttostr(s2);
edit3.Text :=inttostr(s1+s2);
end;
procedure Ttext.N33Click(Sender: TObject);
begin
form4.Show;
end;
procedure Ttext.colorExecute(Sender: TObject);
begin
if colordialog1.Execute then
richedit1.SelAttributes.Color:=colordialog1.Color;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -