谁能帮我解决一下如下问题:
有一个TreeView1,怎样判断它当为顶级时把Edit的值给它,二级时把Edit的值给第二级(增第二级时鼠标点第二级时按Button把Edit的值给第二级)。
原料
|
---主料
|
---辅料
|
包装盒
不知道大家明不明白我的意思!多谢
有一个TreeView1,怎样判断它当为顶级时把Edit的值给它,二级时把Edit的值给第二级(增第二级时鼠标点第二级时按Button把Edit的值给第二级)。
原料
|
---主料
|
---辅料
|
包装盒
不知道大家明不明白我的意思!多谢
begin
TN := treeview1.items.selected;
if TN.level = 0 then
begin
treeview1.items.add(nil,edit1.text);
end
else if TN.level = 1 then
begin
treeview1.items.addchild(TN,edit1.text);
end;
end;
再请教你,我的执行后说没定义。
procedure TForm1.Button1Click(Sender: TObject);
var
TN:Ttreenode;
begin
TN:=Treeview1.Items.selected;
if TN.Level=0 then
begin
treeview1.Items.Add(nil,edit1.Text)
end
else
if TN.Level=1 then
begin
treeview1.Items.AddChild(TN,edit1.Text);
end;
end;end.
是不是当前没有节点呀!
begin
TN := treeview1.items.selected;
if TN.level = 0 then
begin
treeview1.items.add(nil,edit1.text);
end
else if TN.level = 1 then
begin
treeview1.items.addchild(TN,edit1.text);
end;
end;
这个办法不错
你调用这个过程的时候TREEVIEW1里面有没有节点?!
如果有节点应该不会出错,要么是错在别的地方。
begin
TN := treeview1.selected;
if TN.level = 0 then
begin
treeview1.items.add(nil,edit1.text);
end
else if TN.level = 1 then
begin
treeview1.items.addchild(TN,edit1.text);
end;
end;
begin
if treeview1.selected = nil then
Abort; TN := treeview1.selected;
if TN.level = 0 then
begin
treeview1.items.add(nil,edit1.text);
end
else if TN.level = 1 then
begin
treeview1.items.addchild(TN,edit1.text);
end;
end;
function TreeLevel(tn : TTreeNode) : Integer;
var
tnn : TTreeNode;
begin
tnn := tn;
result := 1;
while tnn.parent <> nil do
begin
tnn := tnn.parent;
inc(result);
end;
end