TreeView节点拖拉操作1

//事先设置 TreeView1.DragMode= dmAutomatic;
 
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls;

type
  TForm1 = class(TForm)
    TreeView1: TTreeView;
    procedure TreeView1DragOver(Sender, Source: TObject; X, Y: Integer;
      State: TDragState; var Accept: Boolean);
    procedure TreeView1DragDrop(Sender, Source: TObject; X, Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm} 
//var
//      node:TTreeNode;
procedure TForm1.TreeView1DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin 
//   node := TreeView1.GetNodeAt(X, Y);
//    Caption:=node.Text;

    Accept := Source = Sender;
    if not Accept then exit;
end;

procedure TForm1.TreeView1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
  with TreeView1 do 
  begin
    if (Sender <> Source)  then   exit;
    if (DropTarget = nil)   then   exit;
    if (DropTarget = Selected) then   exit;
    Selected.MoveTo(DropTarget,naAddChildFirst);
  end;
end;

end.
 
 

 
 
  TNodeState = (nsCut, nsDropHilited, nsFocused, nsSelected, nsExpanded);
  TNodeAttachMode = (naAdd, naAddFirst, naAddChild, naAddChildFirst, naInsert);
  TAddMode = (taAddFirst, taAdd, taInsert);
 
拖拽时可以看见拖拽的图标如果有的话

附件列表

最新文章

  1. 基于讯为4412开发板的Android开发流程
  2. php-数据库访问--增、删、改
  3. auto_ptr解析
  4. InnoTop
  5. JS实例(二)
  6. JSON字符串序列化与反序列化浅试
  7. JavaScript权威指南学习笔记5
  8. AutoCompleteTextview、MultiAutoCompleteTextView
  9. C#由变量捕获引起对闭包
  10. jquery ui sortable 实现table,row的拖动。(Make Table Rows Sortable Using jQuery UI Sortable)
  11. PHP接入阿里云市场 阿里短信服务DEMO
  12. js实现表格无缝滚动效果
  13. Scala 继承
  14. python import引入不同路径下的模块
  15. windows7使用Source insight上远程改动ubuntu共享内核源代码
  16. 【文文殿下】CF1098C Construct a tree 题解
  17. MongoDB自动删除过期数据--TTL索引
  18. unity实现框选效果
  19. wps标准格式
  20. myeclipse修改jsp文件的名称之后,再也打不开的解决方案

热门文章

  1. Oracle 课程八之性能优化之Oracle SQL Trace
  2. 强大的日志分析工具 -- NSLogger
  3. ylbtech-权限管理-数据库设计-功能权限管理技术
  4. HDU5787 K-wolf Number 数位dp
  5. WinForm使用webbrowser爬取数据,中文乱码问题
  6. 如何从ST网站找到对应的固件库
  7. OpenStack Cinder组件支持的块存储设备表
  8. [转载] I wish you enough
  9. JDBC学习笔记(1)——JDBC概述
  10. ZOJ 3903 Ant(数学,推公示+乘法逆元)