如何用代码使TreeView中的结点处于编辑状态

lcy5415 2005-10-10 01:59:30
查了以前的贴子,但不知道怎么做,我才从net转过来,请给点细致的代码,谢谢!
...全文
116 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
leonkim 2005-10-11
  • 打赏
  • 举报
回复
procedure TForm1.tvEdited(Sender: TObject; Node: TTreeNode; var S: String);
begin
showmessage(S);//S就是新的字符,Node.Text是原来的字符
end;

//楼主的问题好像不是这样啊

如何用代码使TreeView中的结点处于编辑状态
做法是:
procedure TForm1.Button2Click(Sender: TObject);
begin
tv.SetFocus;//tv是TTreeView控件
PostMessage(tv.Items[0].handle,TVM_EDITLABEL,0,integer(tv.Items[1].itemid));
end;
一根老玉米 2005-10-11
  • 打赏
  • 举报
回复
str:=tv1.Selected.EditText
lcy5415 2005-10-10
  • 打赏
  • 举报
回复
procedure TForm1.TreeView1Edited(Sender: TObject; Node: TTreeNode; var S: String);
var
str: string;
NewNode: TTreeNode;
begin
NewNode:= TreeView1.Selected;
NewNode.Selected := true;
NewNode.Focused := true;
//下面这个地方不会做
str:=,,,,//想在这得到新修改后的值,来提交到数据库,这是这总是不对

end;
leonkim 2005-10-10
  • 打赏
  • 举报
回复
楼主要记着在发送此消息前,tv.setfocus;呵呵
leonkim 2005-10-10
  • 打赏
  • 举报
回复

PostMessage(tv.Items[0].handle,TVM_EDITLABEL,0,integer(tv.Items[1].itemid));

接分
leonkim 2005-10-10
  • 打赏
  • 举报
回复
应该是用
TVM_EDITLABEL消息(commctrl单元中)来完成的。
cncharles 2005-10-10
  • 打赏
  • 举报
回复
procedure TForm1.btn1Click(Sender: TObject);
//tv1为TreeView
begin
//tv1.Selected.EditText;//如果你要自写手工输入去掉//
tv1.Selected.Text:='you want'; //如果你想直接赋值
end;

5,392

社区成员

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

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