📄 usearch.~pas
字号:
unit USearch;
{
//////////////////////////////////////////
搜索类
//////////////////////////////////////////
}
interface
uses Classes,UDic,UDocuments,UParser,Windows,SyncObjs;
Type
TSearcher = Class
private
FDic : TAbstractDic;
FDocs : TAbstractDocs;
FCritical : TCriticalSection;
FParser : TParser;
public
procedure StartSearch();
public
Constructor Create(dic:TAbstractDic;docs:TAbstractDocs;Parser : TParser);
Destructor Destroy();override;
end;
implementation
{ TSearcher }
constructor TSearcher.Create(dic: TAbstractDic; docs: TAbstractDocs;Parser:TParser);
begin
FDic := dic;
FDocs := docs;
FParser := Parser;
FCritical := TCriticalSection.Create ;
end;
destructor TSearcher.Destroy;
begin
FCritical.Release ;
FCritical.Free;
inherited;
end;
procedure TSearcher.StartSearch;
var
ID : integer;
Text : String;
begin
while FDocs.EndDoc() do
begin
FCritical.Enter;
FDocs.NextDoc();
ID := FDocs.GetID();
Text := FDocs.GetText();
FCritical.Leave ;
FParser.Parser(ID,Text);
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -