如何在Treeview中增加一新节点,并把鼠标定位在该节点,给它重新命名?

jiaxianglei 2003-08-21 04:40:03
我想在Treeview1上点击右键“新增节点”后,树中增加一个新节点,同时使鼠标移到该节点并可重新命名。
我用下面的语句:
treeview1.Items.Add(nil,'新节点');
treeview1.Selected.EditText;
节点是增加了一个,但是选择的节点不是新增的节点,而是其它节点,如何使鼠标定位在新增的节点?
...全文
77 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengjn 2003-08-22
  • 打赏
  • 举报
回复
哎,如何用右键选结点都回答n遍了
procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var node: TTreeNode;
begin
if Button = mbRight then
begin
sendMessage(TreeView1.Handle,WM_LBUTTONDOWN,0,MakeLong(x,y));
end;
end;
myadvice 2003-08-22
  • 打赏
  • 举报
回复
兄弟,上面写代码那几位兄弟说得非常正确啊!正知你试过没有
大地精灵 2003-08-22
  • 打赏
  • 举报
回复
楼主,你的概念有点混淆了,你可以添加的时候判断是否存在,不存在就提交数据库,然后在节点上添加,至于修改,实际是通用的修改,就跟你修改别的(不是新增的)一样,在修改的时候判断你改变的值在数据库里是否存在,有的话就不允许修改
jiaxianglei 2003-08-21
  • 打赏
  • 举报
回复
加之前是无法判断的,因为加时我可以修改节点的内容,然后判断内容是不是相同,如果不同则增加,否则提示“有相同记录”。
jiaxianglei 2003-08-21
  • 打赏
  • 举报
回复
哈哈,因为这两个问题相关呀,说起来其实是一个问题中的两个小问题。不够分可再加。
大地精灵 2003-08-21
  • 打赏
  • 举报
回复
那你可以在加之前就判断库里是否有了,如果没有再加不就行了
yujohny 2003-08-21
  • 打赏
  • 举报
回复
问完一个问题又一个问题哦??该扣你的信誉值了,哈哈
jiaxianglei 2003-08-21
  • 打赏
  • 举报
回复
当增加一个节点后,如何把该节点加到库中?并且如何判断该节点是不是与其它节点相同?如果相同则提示错误。
yujohny 2003-08-21
  • 打赏
  • 举报
回复
在Uses里添加CommCtrl单元
然后这样写代码:
treeview1.Selected := treeview1.Items.Add(nil,'新节点');
TreeView_EditLabelW(TreeView1.Handle,Tree.Selected.ItemId)
lxpbuaa 2003-08-21
  • 打赏
  • 举报
回复
treeview1.Selected := treeview1.Items.Add(nil,'新节点');

————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————

5,388

社区成员

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

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