当我把TreeView1的根结点拖拽到TreeView2的结点中时就会报异常,是怎样处理呢?
解决方案 »
- 能不能让MdiChild窗体显示在mdiform中的panel中?
- 多线程读写变量的问题
- 不太明白ADOQuery的Fields和Parameters的作用和区别
- 送大家一些有特别名字的免费信箱.
- 打印报表预览时‘打印设置’和’打印‘按钮怎么都失效了?
- 关于在delphi中用TAdoQuery读取大量数据的问题。谢谢各位了
- 用Pinter可以打印DBGrid的内容吗
- 如何设定TClientDataSet的DataSetField属性?
- dev *33 Bar 问题
- 在paradox里如何为数据做备份 ?
- 我的小站,请弟兄们捧场,谢谢 http://www.abis.com.cn
- combobox输入法
(Source as TTreeView).Items.BeginUpdate;
try TempNode1 := (Source as TTreeView).Items.AddChild( (Sender as TTreeView).DropTarget,'Temp' );try
if Sender <> nil then
begin
T:=(Sender as TTreeview).GetNodeAt(X,Y);
if T<>nil then
begin
TempNode1 := (Source as TTreeview).Items.AddChild((Sender as TTreeview).DropTarget,'Temp' );
(Source as TTreeview).Selected.MoveTo(T, AttachMode1);
end
else
begin
(Sender as TTreeview).Items.Add(nil,(Source as TTreeview).Selected.Text); end;
end;finally TempNode1.Free; end;finally (Sender as TTreeView).Items.EndUpdate;
(Source as TTreeView).Items.EndUpdate;
end;end;这是(Source as TTreeview).Selected.MoveTo(T, AttachMode1);这里报异常的
(Source as TTreeview).Selected.MoveTo(T, AttachMode1);
if (Source as TTreeview).Selected<>nil then
(Source as TTreeview).Selected.MoveTo(T, AttachMode1);是可以的,
如果你移动的是根节点就是说Null.MoveTo(T,AttachModel)你认为这也是可行的吗?
请你思考用另外的方法实现,即:
if (Source as TTreeview).Selected <> nil then
(Source as TTreeview).Selected.MoveTo(T, AttachModel)
else
其他的方法;
难道不应该触发的是(Sender as TTreeview).Items.Add(nil,(Source as TTreeview).Selected.Text);