⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clipunit.pas

📁 一个漂亮的电子书籍阅读管理器
💻 PAS
字号:
//---------------------------------------------------------------------------
//(R)CopyRight KivenSoft International ,inc 1999
//单元名称:剪贴单元
//程序名称:电子书库
//作    者:李会文
//开始时间:1999.07.07
//最后修改:1999.07.07
//备注:此单元定义了树形视图中进行剪贴的方式
//---------------------------------------------------------------------------
unit ClipUnit;

interface
uses
  Windows,CommCtrl, Classes, ComCtrls;

type
  TSrmClip=class
  private
    FNode:TTreeNode;
    FMode:integer;
  public
    constructor Create;
    procedure Cut(ANode:TTreeNode);   //剪切该标题
    procedure Copy(ANode:TTreeNode);  //拷贝该标题
    procedure Paste(ANode:TTreeNode); //粘贴该标题
    property Node:TTreeNode read FNode;
    property Mode:integer read FMode;
  end;

var
  SrmClip:TSrmClip;

implementation

uses
  MainUnit;

constructor TSrmClip.Create;
begin
  FNode:=nil;
  FMode:=-1;
end;

procedure TSrmClip.Cut(ANode:TTreeNode);   //剪切该标题
begin
  FNode:=ANode;
  FMode:=0;
end;

procedure TSrmClip.Copy(ANode:TTreeNode);  //拷贝该标题
begin
  FNode:=ANode;
  FMode:=1;
end;

procedure TSrmClip.Paste(ANode:TTreeNode); //粘贴该标题
var
  tmpNode:TTreeNode;
  Ms:TMemoryStream;
  Id:integer;
begin
  if (FMode=-1) or (FNode=nil) then exit;   //无剪切或拷贝时退出

  if FMode=0 then        //剪切时
  begin
    FNode.MoveTo(ANode,naAddChildFirst);
    SrmForm.TreeView.Selected:=FNode;
  end
  else if FMode=1 then
  begin
    tmpNode:=SrmForm.TreeView.Items.AddChildObjectFirst
           (ANode,FNode.Text,pointer(-1));
    tmpNode.ImageIndex:=FNode.ImageIndex;
    SrmForm.TreeView.Selected:=tmpNode;
    Srm.ReadItemHead(integer(FNode.Data));
    Ms:=TMemoryStream.Create;
    Srm.ReadItemData(Ms);
    SrmForm.RichEdit.Lines.LoadFromStream(Ms);
    Ms.Free;
  end;
  if SrmForm.TreeView.Selected.Parent=nil then Id:=0
  else Id:=integer(SrmForm.TreeView.Selected.Parent.ItemId);
  SendMessage(SrmForm.TreeView.Handle,TVM_SORTCHILDREN,0,Id);
  FMode:=-1;
  FNode:=nil;
end;


end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -