要如何為dbtreeview加入新節點.指標不會出現亂數 |
尚未結案
|
superm
一般會員 發表:1 回覆:2 積分:0 註冊:2003-05-11 發送簡訊給我 |
我是初學者.還請各位高手指點
感謝.我找了好久終於由這篇文章黃金文章 原始網址:http://delphi.ktop.com.tw/topic.php?topic_Id=28046
成功完成了dbtree的結構
可是最近有一些問題.加入新增方法.可是加資料到tree尾巴時指標會亂數.不會正確新筆.要如何才可以
還請各位高手指點
程式碼如下:
function TForm1.addnode(node1:TTreenode):TTreenode;
var
p: pNodeData;
tmpstr:string;
i:integer;
index:string;
begin
try
strtoint(edit2.text);
tmpstr:=edit2.text;
except;
showmessage('重新輸入edit2的內容');
abort;
end;
with treeview1 do
begin
new(p);
index:=inttostr(pNodeData(node1.data).typecode); //得該節點對應指標在數據庫刪除相應指標,前面有資料正常.加資料到tree尾巴時指標會亂數;
showmessage(index);
Items.AddChildObject(node1,edit1.text,p);
end;
with adotable1 do
// 在資料庫裏添加記錄
begin
active:=true;
append;
fieldbyname('type').asstring:=edit1.text;
fieldbyname('Parentcode').asstring:=index;
post;
end;
end;
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
引言: begin new(p); index:=inttostr(pNodeData(node1.data).typecode); //得該節點對應指標,前面有資料正常.加資料到tree尾巴時指標會亂數; showmessage(index); Items.AddChildObject(node1,edit1.text,p); end;感覺上是這一小段中的問題, 其中使用了 pNodeData 來進行 casting 的時候, 要取出資料應該是這樣寫: index:=inttostr(pNodeData(node1.data)^.typecode); 你試試看! |
superm
一般會員 發表:1 回覆:2 積分:0 註冊:2003-05-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |