addchild的时候老是出现invalid variant type conversion的错误。
add的时候没有问题。
代码如下:
DataSet.First();
while not DataSet.Eof do
begin
if DataSet['GROUP_ID'] = '0' then
begin
TaskTreeView.Items.Add(nil,'aaa');
end
else begin
for i:= 0 to TaskTreeView.Items.Count-1 do
begin
if DataSet['GROUP_ID'] = TaskTreeView.Items[i].Text then
begin
TaskTreeView.Items.AddChild(TaskTreeView.Items[i],'bbb');
break;
end;
end;
end;
DataSet.Next();
end;
add的时候没有问题。
代码如下:
DataSet.First();
while not DataSet.Eof do
begin
if DataSet['GROUP_ID'] = '0' then
begin
TaskTreeView.Items.Add(nil,'aaa');
end
else begin
for i:= 0 to TaskTreeView.Items.Count-1 do
begin
if DataSet['GROUP_ID'] = TaskTreeView.Items[i].Text then
begin
TaskTreeView.Items.AddChild(TaskTreeView.Items[i],'bbb');
break;
end;
end;
end;
DataSet.Next();
end;
解决方案 »
- 远端模块中编写的函数,在客户端用不了,求解,谢谢!
- 一冲动多回复了几贴变猩猩了,散分。
- Delphi7+sqlserver2000,用adoQuery连接,在作Edit操作的时候,提交时会出现"无法为更新定位行,一些值可能已在最后一次读取后已更新"
- 我做了一个COM组件.可是每次注册后又发现有不对的地方.想要再次修改重新编译时.却通不过.只好重启.(regsrv32 -u我用过)帮忙....谢谢...
- 有没有哪个时间函数的返回值是精确到毫秒的
- 怎样在自己的程序里执行SQL脚本文件?
- 控件聚焦问题?
- SOS~
- 请问怎么实现16进制数据的传送?
- 求助:有没有这样的软件?(每次启动后,都可以定时),谢谢!
- qq数据库设计思想???
- 高手在哪里?怎么从内存流中打开文件?UP给分!
改成
TaskTreeView.Items.AddChild(TaskTreeView.Items.Item[i],'bbb');
如果我把add 和addchild中的参数同时换成DataSet['ID'],就没有问题。
DataSet['ID']返回数据库中一个number字段,
但是如果换成DataSet['NAME'],就不行了,这是个varchar字段。
不知道为什么?
Items.Item[i]和Items[i]有什么区别呀?
还有DataSet[]和DataSet.values[].