ADOQuery1字段读取
ADOQuery1的sql语句是select * from patient order by ccid asc
tv1是treeview控件
ADOQuery1.First;
if ADOQuery1.IsEmpty then
begin
tv1.Items.Add(nil, '无新病人记录 ') ;
exit;
end
else
begin
repeat
begin
lpid1:= ADOQuery1.fieldbyname( 'id ').asstring; //取出连接标记;
lpid2:=ADOQuery1.fieldbyname( 'pid ').asstring;
lpid3:=ADOQuery1.fieldbyname( 'ccid ').asstring;
mynode:=tv1.items.add(tv1.selected,ADOQuery1.fieldbyname( 'id ').asstring); //病人基本信息初始化;
tv1.items.addchild(mynode,ADOQuery1.fieldbyname( 'name ').asstring);
tynode:=tv1.items.addchild(mynode,ADOQuery1.fieldbyname( 'sex ').asstring);
end;
ADOQuery1.Next;
until ADOQuery1.eof;
代码运行的时候当数据库中有两条记录的时候name字段好象读取不到tv1(treeview)中没有姓名节点
[解决办法]
tv1.selected是哪个结点?
Treeview中无结点或要建立第一级结点时,items.add的第一个参数应该是nil