?? mainunit.~pa
字號:
//---------------------------------------------------------------------------
//(R)CopyRight KivenSoft International ,inc 1998
//程序名稱:電子書庫
//單元名稱:主窗口單元
//作 者:李會文
//單元名稱:主程序單元
//開始時間:1998.07.28
//最后修改:1999.07.22
//---------------------------------------------------------------------------
unit MainUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Menus, StdCtrls, ComCtrls, CommCtrl, ExtCtrls, ToolWin, ShellApi, Registry,
SrmUnit, SrmConst, ShlObj, FileCtrl, RichEdit, ImgList, KvLabel, Buttons,
jpeg, ActnList;
type
TSrmForm = class(TForm)
Splitter: TSplitter;
StatusBar: TStatusBar;
LeftForm: TPanel;
LeftBottomPanel: TPanel;
RightPanel: TPanel;
ImageList: TImageList;
SaveDialog: TSaveDialog;
OpenDialog: TOpenDialog;
FindDialog: TFindDialog;
ReplaceDialog: TReplaceDialog;
LeftPageControl: TPageControl;
RightPageControl: TPageControl;
IndexTabSheet: TTabSheet;
TreeView: TTreeView;
DrawTabSheet: TTabSheet;
PropertiyTabSheet: TTabSheet;
SearchTabSheet: TTabSheet;
ProTabSheet: TTabSheet;
DbAuthorEdit: TEdit;
DbPasswordEdit: TEdit;
DbBuildDateEdit: TEdit;
DbEditDateEdit: TEdit;
ContextAuthorEdit: TEdit;
ContextPasswordEdit: TEdit;
ContextPubDateEdit: TEdit;
ContextIndexEdit: TEdit;
SearchListBox: TListBox;
ContextTypeRadioGroup: TRadioGroup;
MainFormMenu: TMainMenu;
FileMenuItem: TMenuItem;
NewMenuItem: TMenuItem;
OpenMenuItem: TMenuItem;
SaveMenuItem: TMenuItem;
CloseMenuItem: TMenuItem;
N1: TMenuItem;
FImportMenuItem: TMenuItem;
DImportMenuItem: TMenuItem;
ExportMenuItem: TMenuItem;
N3: TMenuItem;
PrintMenuItem: TMenuItem;
N4: TMenuItem;
ListMenuItem: TMenuItem;
MenuItem2: TMenuItem;
MenuItem3: TMenuItem;
MenuItem4: TMenuItem;
MenuItem5: TMenuItem;
MyLoveMenuItem: TMenuItem;
MyLoveNextMenuItem: TMenuItem;
ExitMenuItem: TMenuItem;
EditMenuItem: TMenuItem;
UndoMenuItem: TMenuItem;
RedoMenuItem: TMenuItem;
N6: TMenuItem;
CutMenuItem: TMenuItem;
CopyMenuItem: TMenuItem;
PasteMenuItem: TMenuItem;
N7: TMenuItem;
SelAllMenuItem: TMenuItem;
N8: TMenuItem;
FindMenuItem: TMenuItem;
FindNextMenuItem: TMenuItem;
ReplaceMenuItem: TMenuItem;
N9: TMenuItem;
DelSpaceMenuItem: TMenuItem;
ViewMenuItem: TMenuItem;
ToolsMenuItem: TMenuItem;
StatusMenuItem: TMenuItem;
TitleMenuItem: TMenuItem;
ReadOnlyMenuItem: TMenuItem;
BigFontMenuItem: TMenuItem;
SmallFontMenuItem: TMenuItem;
N10: TMenuItem;
OptionsMenuItem: TMenuItem;
OperatorMenuItem: TMenuItem;
AddNodeMenuItem: TMenuItem;
AddSubNodeMenuItem: TMenuItem;
EditNodeMenuItem: TMenuItem;
DelNodeMenuItem: TMenuItem;
N11: TMenuItem;
SortMenuItem: TMenuItem;
N12: TMenuItem;
CompressMenuItem: TMenuItem;
CovertMenuItem: TMenuItem;
HelpMenuItem: TMenuItem;
AboutMenuItem: TMenuItem;
ReadmeMenuItem: TMenuItem;
N13: TMenuItem;
HomePageMenuItem: TMenuItem;
EMailMenuItem: TMenuItem;
OtherMenuItem: TMenuItem;
KivenLabel: TKvLabel;
N2: TMenuItem;
DbAuthorLabel: TKvLabel;
DbPasswordLabel: TKvLabel;
BuildDateLabel: TKvLabel;
DbEditDateLabel: TKvLabel;
ContextAuthorLabel: TKvLabel;
ContextPasswordLabel: TKvLabel;
ContextPubDateLabel: TKvLabel;
KvLabel1ContextIndexLabel: TKvLabel;
TreeViewPopupMenu: TPopupMenu;
AddNodePopMenuItem: TMenuItem;
AddSubNodePopMenuItem: TMenuItem;
DelNodePopMenuItem: TMenuItem;
EditNodePopMenuItem: TMenuItem;
N14: TMenuItem;
CutNodePopMenuItem: TMenuItem;
CopyNodePopMenuItem: TMenuItem;
PasteNodePopMenuItem: TMenuItem;
RichEditPopupMenu: TPopupMenu;
CutPopMenuItem: TMenuItem;
CopyPopMenuItem: TMenuItem;
PastePopMenuItem: TMenuItem;
SelAllPopMenuItem: TMenuItem;
N15: TMenuItem;
DelSpacePopMenuItem: TMenuItem;
SetTitlePopMenuItem: TMenuItem;
SetIndexPopMenuItem: TMenuItem;
SetAuthorPopMenuItem: TMenuItem;
RichEdit: TRichEdit;
RightTopPanel: TPanel;
TitleLabel: TKvLabel;
PrevSpeedButton: TSpeedButton;
NextSpeedButton: TSpeedButton;
ControlBar: TControlBar;
FileToolBar: TToolBar;
OpenToolButton: TToolButton;
SaveToolButton: TToolButton;
MyLoveToolButton: TToolButton;
PrintToolButton: TToolButton;
MenuToolBar: TToolBar;
FileToolButton: TToolButton;
EditToolButton: TToolButton;
ViewToolButton: TToolButton;
OperatorToolButton: TToolButton;
HelpToolButton: TToolButton;
EditToolBar: TToolBar;
CutToolButton: TToolButton;
CopyToolButton: TToolButton;
PasteToolButton: TToolButton;
FindToolButton: TToolButton;
ActionList: TActionList;
NewAction: TAction;
OpenAction: TAction;
SaveAction: TAction;
CloseAction: TAction;
FImportAction: TAction;
DImportAction: TAction;
ExportAction: TAction;
PrintAction: TAction;
MyLoveAction: TAction;
ExitAction: TAction;
UndoAction: TAction;
RedoAction: TAction;
CutAction: TAction;
CopyAction: TAction;
PasteAction: TAction;
SelAllAction: TAction;
FindAction: TAction;
FindNextAction: TAction;
ReplaceAction: TAction;
DelSpaceAction: TAction;
ToolsAction: TAction;
StatusAction: TAction;
ReadOnlyAction: TAction;
BigFontAction: TAction;
SmallFontAction: TAction;
OptionAction: TAction;
AddNodeAction: TAction;
AddSubNodeAction: TAction;
EditNodeAction: TAction;
DelNodeAction: TAction;
SortAction: TAction;
CompressAction: TAction;
CovertAction: TAction;
AboutAction: TAction;
ReadMeAction: TAction;
HomePageAction: TAction;
EMailAction: TAction;
OtherAction: TAction;
TitleAction: TAction;
ViewToolBar: TToolBar;
ReadOnlyToolButton: TToolButton;
ToolButton4: TToolButton;
BigFontToolButton: TToolButton;
SmallFontToolButton: TToolButton;
OperatorToolBar: TToolBar;
AddNodeToolButton: TToolButton;
AddSubNodeToolButton: TToolButton;
EditNodeToolButton: TToolButton;
DelNodeToolButton: TToolButton;
OtherToolBar: TToolBar;
ReadMeToolButton: TToolButton;
AboutToolButton: TToolButton;
ToolButton7: TToolButton;
HomePageToolButton: TToolButton;
EMailToolButton: TToolButton;
ToolButton8: TToolButton;
ExitToolButton: TToolButton;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
WordWrapAction: TAction;
WordWrapMenuItem: TMenuItem;
WordWrapToolButton: TToolButton;
N5: TMenuItem;
TitleToolButton: TToolButton;
N16: TMenuItem;
ExportPopMenuItem: TMenuItem;
CParaAction: TAction;
DParaAction: TAction;
CParaMenuItem: TMenuItem;
DParaMenuItem: TMenuItem;
GbToBigAction: TAction;
BigToGbAction: TAction;
N17: TMenuItem;
GbToBigMenuItem: TMenuItem;
BigToGbMenuItem: TMenuItem;
ToolBar1: TToolBar;
KvLabel1: TKvLabel;
Edit1: TEdit;
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure StatusBarDrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
procedure NewMenuItemClick(Sender: TObject);
procedure CovertMenuItemClick(Sender: TObject);
procedure OpenMenuItemClick(Sender: TObject);
procedure TreeViewChange(Sender: TObject; Node: TTreeNode);
procedure CloseMenuItemClick(Sender: TObject);
procedure SaveMenuItemClick(Sender: TObject);
procedure TreeViewEdited(Sender: TObject; Node: TTreeNode;
var S: String);
procedure FImportMenuItemClick(Sender: TObject);
procedure ExportMenuItemClick(Sender: TObject);
procedure PrintMenuItemClick(Sender: TObject);
procedure ExitMenuItemClick(Sender: TObject);
procedure TreeViewChanging(Sender: TObject; Node: TTreeNode;
var AllowChange: Boolean);
procedure UndoMenuItemClick(Sender: TObject);
procedure RedoMenuItemClick(Sender: TObject);
procedure CutMenuItemClick(Sender: TObject);
procedure CopyMenuItemClick(Sender: TObject);
procedure PasteMenuItemClick(Sender: TObject);
procedure SelAllMenuItemClick(Sender: TObject);
procedure FindMenuItemClick(Sender: TObject);
procedure FindNextMenuItemClick(Sender: TObject);
procedure ReplaceMenuItemClick(Sender: TObject);
procedure DelSpaceMenuItemClick(Sender: TObject);
procedure FindDialogFind(Sender: TObject);
procedure ReplaceDialogReplace(Sender: TObject);
procedure ToolsMenuItemClick(Sender: TObject);
procedure StatusMenuItemClick(Sender: TObject);
procedure TitleMenuItemClick(Sender: TObject);
procedure ReadOnlyMenuItemClick(Sender: TObject);
procedure BigFontMenuItemClick(Sender: TObject);
procedure SmallFontMenuItemClick(Sender: TObject);
procedure OptionsMenuItemClick(Sender: TObject);
procedure AddNodeMenuItemClick(Sender: TObject);
procedure AddSubNodeMenuItemClick(Sender: TObject);
procedure EditNodeMenuItemClick(Sender: TObject);
procedure DelNodeMenuItemClick(Sender: TObject);
procedure SortMenuItemClick(Sender: TObject);
procedure CompressMenuItemClick(Sender: TObject);
procedure MyLoveMenuItemClick(Sender: TObject);
procedure HomePageMenuItemClick(Sender: TObject);
procedure AboutMenuItemClick(Sender: TObject);
procedure ReadmeMenuItemClick(Sender: TObject);
procedure EMailMenuItemClick(Sender: TObject);
procedure OtherMenuItemClick(Sender: TObject);
procedure DImportMenuItemClick(Sender: TObject);
procedure SetTitlePopMenuItemClick(Sender: TObject);
procedure TreeViewDragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure TreeViewDragDrop(Sender, Source: TObject; X, Y: Integer);
procedure CutNodePopMenuItemClick(Sender: TObject);
procedure CopyNodePopMenuItemClick(Sender: TObject);
procedure PasteNodePopMenuItemClick(Sender: TObject);
procedure TreeViewPopupMenuPopup(Sender: TObject);
procedure RichEditPopupMenuPopup(Sender: TObject);
procedure FileMenuItemClick(Sender: TObject);
procedure EditMenuItemClick(Sender: TObject);
procedure DbAuthorEditChange(Sender: TObject);
procedure ContextAuthorEditChange(Sender: TObject);
procedure SetAuthorPopMenuItemClick(Sender: TObject);
procedure SetIndexPopMenuItemClick(Sender: TObject);
procedure PrevSpeedButtonClick(Sender: TObject);
procedure NextSpeedButtonClick(Sender: TObject);
procedure TreeViewExpanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean);
procedure ContextTypeRadioGroupClick(Sender: TObject);
procedure RichEditChange(Sender: TObject);
procedure ListMenuItemClick(Sender: TObject);
procedure TreeViewCompare(Sender: TObject; Node1, Node2: TTreeNode;
Data: Integer; var Compare: Integer);
procedure RichEditKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure ControlBarDockOver(Sender: TObject; Source: TDragDockObject;
X, Y: Integer; State: TDragState; var Accept: Boolean);
procedure WordWrapMenuItemClick(Sender: TObject);
procedure CParaMenuItemClick(Sender: TObject);
procedure DParaMenuItemClick(Sender: TObject);
procedure GbToBigMenuItemClick(Sender: TObject);
procedure BigToGbMenuItemClick(Sender: TObject);
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure SearchListBoxClick(Sender: TObject);
private
procedure MyShowHint(Sender:TObject); //應用程序提示函數
public
{ Public declarations }
end;
var
SrmForm: TSrmForm;
PanelHint:string; //在線提示
Srm: TSrmObject; //Srm讀寫類
implementation
uses SrmAbout, InputPw, SrmOption, MainFun, RegUnit, MruUnit, ClipUnit,
GbBig;
{$R *.DFM}
//****************************************************************
procedure TSrmForm.MyShowHint(Sender:TObject);
begin
PanelHint:=GetLongHint(Application.Hint);
SrmForm.StatusBar.Refresh;
end;
//****************************************************************
//窗體新建前----------------------------------------------------------------
procedure TSrmForm.FormCreate(Sender: TObject);
var
i:integer;
begin
//變量初始化
SrmClip:=TSrmClip.Create; //初始化自身剪貼板
AppIni:=TAppIni.Create; //讀入配置信息和狀態信息
Mru:=TMru.Create; //文件菜單的設置
Mru.ParentMenu:=FileMenuItem;
Mru.Position:=11;
Mru.Visible:=AppIni.FileListVisible;
for i:=4 downto 0 do Mru.Add(AppIni.FileList[i]);
MyLoveMenuItem.Enabled:=AppIni.MyLoveFile<>'';
MyLoveMenuItem.Visible:=AppIni.MyLoveVisible;
MyLoveNextMenuItem.Visible:=Appini.MyLoveVisible;
if ParamCount=1 then
begin
OpenSrm(ParamStr(1)); //帶文件名參數運行時
exit;
end;
if AppIni.LoadNearFile then //如果允許打開上次關閉時的文件
if AppIni.NearFile<>'' then //否則打開上次關閉時的文件
if FileExists(AppIni.NearFile) then //文件存在時
begin
OpenSrm(AppIni.NearFile);
if Srm<>nil then Caption:=csAppName+' - '+Srm.FileName;
end;
Application.OnHint:=MyShowHint;
end;
//窗體顯示前----------------------------------------------------------------
procedure TSrmForm.FormShow(Sender: TObject);
begin
//
end;
//窗體關閉前----------------------------------------------------------------
procedure TSrmForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if Srm<>nil then
AppIni.NearFile:=Srm.FileName
else
AppIni.NearFile:='';
if CloseSrmQuery then
CloseSrm
else
begin
Action:=caNone;
exit;
end;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -