怎样在TreeView控间中定位?我先选择一个Item,然后对TreeView排序后,怎样又回到刚选择的Item上来。也就是说让该Item选中,并能显示出来。

Happyledian 2001-10-31 10:13:48
怎样在TreeView控间中定位?我先选择一个Item,然后对TreeView排序后,怎样又回到刚选择的Item上来。也就是说让该Item选中,并能显示出来。
...全文
106 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
title 2001-10-31
  • 打赏
  • 举报
回复
使用GetNodeAt(x,y)得到指定的Ttreenode的x,y
使用ScrollBy(x,y)返回到指定的Ttreenode。
大概是这样,你可以试试
Happyledian 2001-10-31
  • 打赏
  • 举报
回复
我用了TreeView.Clear,所以楼上的a变量的内存地址会释放。行不通!!!
我有了解决办法,就是用TreeView.Items[i].Text来匹配,如果有则将
TreeView.Selected := TreeView.Items[i].Text;
当然,在TreeView的OnChanged事件中要记录Text值到,全局变量。
谢谢,各位的参与。有问题我们可以相互交流。
kevin_gao 2001-10-31
  • 打赏
  • 举报
回复
treeview1.Selected:=a;
可以这样赋值呀,没错吧?

当然a.selected:=true好象更好.

Liusp 2001-10-31
  • 打赏
  • 举报
回复
var
Temp:TTreeNode;
begin
Temp := TreeView1.Selected;
排序;
Temp.Selected := True;
end;
Happyledian 2001-10-31
  • 打赏
  • 举报
回复
...
treeview.clear;

SortTreeView(...);

...

{定位处理?}
...
Liusp 2001-10-31
  • 打赏
  • 举报
回复
楼上的兄弟说的不错!
Happyledian 2001-10-31
  • 打赏
  • 举报
回复
我的代码大概是这样:

...
marysxj 2001-10-31
  • 打赏
  • 举报
回复
楼上的,这样好像不行,TreeView不能被赋值,我以前也遇到过这个问题.
关注
kevin_gao 2001-10-31
  • 打赏
  • 举报
回复
var
a:TTreeNode;
begin
a:=treeview1.Selected;
排序后再treeview1.Selected:=a;
(没试过.)

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧