📄 mainform.pas
字号:
unit mainform;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, ToolWin, StdCtrls, ExtCtrls, Menus, Buttons,inifiles,
filectrl,shellapi, ImgList, Danhint, LblEffct, StdActns, ActnList;
type
Tmainwin = class(TForm)
StatusBar1: TStatusBar;
ImageList1: TImageList;
MainMenu1: TMainMenu;
fileitem: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
edititem: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
respitem: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
N24: TMenuItem;
confitem: TMenuItem;
N25: TMenuItem;
N26: TMenuItem;
N27: TMenuItem;
helpitem: TMenuItem;
N30: TMenuItem;
N31: TMenuItem;
N32: TMenuItem;
N33: TMenuItem;
N34: TMenuItem;
Panel1: TPanel;
Panel2: TPanel;
N36: TMenuItem;
PopupMenu1: TPopupMenu;
N38: TMenuItem;
N39: TMenuItem;
N40: TMenuItem;
N41: TMenuItem;
N43: TMenuItem;
RichEdit1: TRichEdit;
Panel4: TPanel;
Timer1: TTimer;
N44: TMenuItem;
N45: TMenuItem;
N46: TMenuItem;
N47: TMenuItem;
PopupMenu2: TPopupMenu;
N48: TMenuItem;
N49: TMenuItem;
N50: TMenuItem;
N53: TMenuItem;
N54: TMenuItem;
N55: TMenuItem;
ColorDialog1: TColorDialog;
FontDialog1: TFontDialog;
N52: TMenuItem;
N56: TMenuItem;
SaveDialog1: TSaveDialog;
OpenDialog1: TOpenDialog;
N57: TMenuItem;
N42: TMenuItem;
N2: TMenuItem;
Finddialog1: TFindDialog;
Timer2: TTimer;
N4: TMenuItem;
N28: TMenuItem;
N29: TMenuItem;
N60: TMenuItem;
ImageList3: TImageList;
N61: TMenuItem;
N62: TMenuItem;
N63: TMenuItem;
N64: TMenuItem;
N65: TMenuItem;
N51: TMenuItem;
N66: TMenuItem;
N67: TMenuItem;
N68: TMenuItem;
N69: TMenuItem;
N70: TMenuItem;
N71: TMenuItem;
N72: TMenuItem;
ImageList2: TImageList;
N7: TMenuItem;
N73: TMenuItem;
Splitter1: TSplitter;
psDialog1: TPrinterSetupDialog;
N74: TMenuItem;
PrintDialog1: TPrintDialog;
N75: TMenuItem;
N76: TMenuItem;
N77: TMenuItem;
N78: TMenuItem;
N79: TMenuItem;
toolitem: TMenuItem;
N82: TMenuItem;
N83: TMenuItem;
N81: TMenuItem;
N84: TMenuItem;
N85: TMenuItem;
N86: TMenuItem;
N87: TMenuItem;
N88: TMenuItem;
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
ToolButton2: TToolButton;
ToolButton6: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton14: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton3: TToolButton;
ToolButton15: TToolButton;
ToolButton17: TToolButton;
ToolButton19: TToolButton;
ToolButton18: TToolButton;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
ToolButton16: TToolButton;
ToolButton12: TToolButton;
ToolButton13: TToolButton;
ToolButton1: TToolButton;
ToolButton22: TToolButton;
ToolButton20: TToolButton;
ToolButton21: TToolButton;
Panel5: TPanel;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
SpeedButton8: TSpeedButton;
SpeedButton7: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton1: TSpeedButton;
Panel7: TPanel;
DanHint1: TDanHint;
Panel3: TPanel;
Panel8: TPanel;
panel6: TLabelEffect;
TreeView1: TTreeView;
ToolButton23: TToolButton;
ToolButton24: TToolButton;
ActionList1: TActionList;
EditCut1: TEditCut;
EditCopy1: TEditCopy;
EditPaste1: TEditPaste;
procedure disphint(Sender: TObject);//显示提示
procedure FormCreate(Sender: TObject);
procedure ToolButton12Click(Sender: TObject);
procedure ToolButton21Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure N45Click(Sender: TObject);
procedure N46Click(Sender: TObject);
procedure N53Click(Sender: TObject);
procedure N54Click(Sender: TObject);
procedure N48Click(Sender: TObject);
procedure N49Click(Sender: TObject);
procedure N50Click(Sender: TObject);
procedure N56Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure PopupMenu1Popup(Sender: TObject);
procedure N38Click(Sender: TObject);
procedure N39Click(Sender: TObject);
procedure N40Click(Sender: TObject);
procedure N41Click(Sender: TObject);
procedure TreeView1Changing(Sender: TObject; Node: TTreeNode;
var AllowChange: Boolean);
procedure RichEdit1KeyPress(Sender: TObject; var Key: Char);
procedure N42Click(Sender: TObject);
procedure TreeView1Edited(Sender: TObject; Node: TTreeNode;
var S: String);
procedure SpeedButton6Click(Sender: TObject);
procedure N25Click(Sender: TObject);
procedure N26Click(Sender: TObject);
procedure N27Click(Sender: TObject);
procedure SpeedButton8Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure ToolButton13Click(Sender: TObject);
procedure Finddialog1Find(Sender: TObject);
procedure ToolButton11Click(Sender: TObject);
procedure ToolButton10Click(Sender: TObject);
procedure SaveDialog1TypeChange(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure N24Click(Sender: TObject);
procedure N60Click(Sender: TObject);
procedure N65Click(Sender: TObject);
procedure PopupMenu2Popup(Sender: TObject);
procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
procedure TreeView1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure TreeView1DragDrop(Sender, Source: TObject; X, Y: Integer);
procedure TreeView1GetSelectedIndex(Sender: TObject; Node: TTreeNode);
procedure TreeView1GetImageIndex(Sender: TObject; Node: TTreeNode);
procedure N66Click(Sender: TObject);
procedure N72Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N34Click(Sender: TObject);
procedure N32Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure ToolButton17Click(Sender: TObject);
procedure N74Click(Sender: TObject);
procedure N75Click(Sender: TObject);
procedure RichEdit1Change(Sender: TObject);
procedure N79Click(Sender: TObject);
procedure N83Click(Sender: TObject);
procedure N87Click(Sender: TObject);
procedure N88Click(Sender: TObject);
procedure StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
procedure Panel7Click(Sender: TObject);
procedure TreeView2GetImageIndex(Sender: TObject; Node: TTreeNode);
procedure TreeView2GetSelectedIndex(Sender: TObject; Node: TTreeNode);
procedure SpeedButton5Click(Sender: TObject);
procedure ToolButton23Click(Sender: TObject);
procedure N30Click(Sender: TObject);
procedure N84Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
mainwin: Tmainwin;
workpath,datpath,quepath,inifilename:string;
exteditpro,toolbarbmpname:string;//外部编辑器和工具栏图片文件名
inifn:tinifile;
treeedited,memoedited:boolean;
Winsta:byte;
implementation
uses proset,optionf,aboutf,qureyf;
{$R *.DFM}
procedure Tmainwin.disphint;
begin
statusbar1.panels.items[0].text:=application.hint;
end;
procedure Tmainwin.FormCreate(Sender: TObject);
var y,m,d:word;
begin
application.onhint:=DispHint;
workpath:=extractfilepath(application.exename);
datpath:=workpath+'defdbs\';
quepath:=workpath+'quefile\';
inifilename:=lowercase(changefileext(application.exename,'.ini'));
inifn:=Tinifile.Create(inifilename);
panel7.caption:=formatdatetime('hh:nn AM/PM',now);//显示时间
decodedate(date,y,m,d);
Panel7.Hint:=(inttostr(y)+'年'+inttostr(m)+'月'+inttostr(d)+'日');
panel1.visible:=not toolbutton12.Down;
splitter1.Visible:=panel1.visible;
if not directoryExists(datpath) then ForceDirectories(datpath); //-------查找并创建数据目录
if not directoryExists(quepath) then ForceDirectories(quepath); //-------查找并创建查询文件目录
if (not directoryExists(datpath))or (not directoryExists(quepath)) then
begin
showmessage('系统数据出错,运行失败,请重新启动!');
halt;
end;
readinif;//从INI文件中读取系统的各状态
n25.Checked:=toolbar1.Visible;
n26.Checked:=statusbar1.Visible;
n27.Checked:=toolbar1.showhint;
N88.Checked:=richedit1.WordWrap;
if winsta=1 then WindowState:=wsMaximized else WindowState:=wsNormal; //设置主窗口状态
if fileexists(datpath+'doctitle.tle') then
treeview1.LoadFromFile(datpath+'doctitle.tle');
treeedited:=false; //设目录树没有修改
memoedited:=false; //设编辑框没有改动
statusbar1.Panels.Items[2].text:='共'+trim(inttostr(treeview1.items.count))+'条资料';
end;
procedure Tmainwin.ToolButton12Click(Sender: TObject);
begin
if ToolButton12.Down then
begin
panel1.Visible:=false;
splitter1.Visible:=false;
end else
begin
splitter1.Visible:=true;
panel1.Visible:=true;
end;
end;
procedure Tmainwin.ToolButton21Click(Sender: TObject);
begin
halt;
end;
procedure Tmainwin.Timer1Timer(Sender: TObject);
var y,m,d:word;
begin
panel7.caption:=formatdatetime('hh:nn AM/PM',now);
decodedate(date,y,m,d);
Panel7.Hint:=(inttostr(y)+'年'+inttostr(m)+'月'+inttostr(d)+'日');
end;
procedure Tmainwin.N45Click(Sender: TObject);
begin
fontdialog1.Font:=treeview1.Font;
if fontdialog1.Execute then treeview1.Font:=fontdialog1.Font;
end;
procedure Tmainwin.N46Click(Sender: TObject);
begin
colordialog1.color:=treeview1.color;
if colordialog1.Execute then treeview1.color:=colordialog1.color;
end;
procedure Tmainwin.N53Click(Sender: TObject);
begin
fontdialog1.Font:=richedit1.Font;
if fontdialog1.Execute then richedit1.Font:=fontdialog1.Font;
end;
procedure Tmainwin.N54Click(Sender: TObject);
begin
colordialog1.color:=richedit1.color;
if colordialog1.Execute then richedit1.color:=colordialog1.color;
end;
procedure Tmainwin.N48Click(Sender: TObject);
begin
SendMessage(RichEdit1.Handle,WM_COPY,0,0);
end;
procedure Tmainwin.N49Click(Sender: TObject);
begin
SendMessage(RichEdit1.Handle,WM_CUT,0,0);
memoedited:=true;
end;
procedure Tmainwin.N50Click(Sender: TObject);
begin
SendMessage(RichEdit1.Handle,WM_PASTE,0,0);
memoedited:=true;
end;
procedure Tmainwin.N56Click(Sender: TObject);
begin
richedit1.SelectAll;
end;
procedure Tmainwin.ToolButton2Click(Sender: TObject);
begin
if (treeview1.selected<>nil) and memoedited then
richedit1.Lines.SaveToFile(datpath+trim(treeview1.Selected.text)+'.sfd');
treeview1.SaveToFile(datpath+'doctitle.tle');
treeedited:=false;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -