TreeView好难 把 node 定义成全局变量;把下面的代码执行两次以上。 Node:=Treeview1.Items.AddChild(Node,'北京'); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 指定 node也可以直接写NODE := TREEVIEW.ITEMS.ADD(NIL,'北京') ;这样NODE 就是指北京这个节点 可能是 TreeView 还没有构造好吧。找一个晚一点执行的事件试试 多谢各位,我按照xiaonan的代码执行了一遍,成功了,但我不明白Nil是什么意思? 窗体初始化的时候,你的TreeView 还没有‘生’出来呢,当然不行了。 你必须在Form1.FormShow()中去加入:TreeView1.Items.AddChild(nil,'北京'); 也不一定。你可以在form1的oncreate事件里加treeview1.items.add('nil,'北京').nil就是空的意思了。一开始,treeview里为空了。 nil是指根节点,比如资源管理器的“桌面”treeview.create后treeview就创建了,只不过没有节点而已,并不是空的 在追加节点的时候,你要先判断树是否为空,要是没有节点的话,就要用addfirstchild方法来追加节点.或者先用addchild(nil,'boot node')创建一个根节点,就OK了! //在构造时还没有窗口句柄,还不能调用传递窗口句柄的方法//需要重载基类的CreateWnd,当它返回时表明所有元件创建完毕//否则会出现一个Control has no parent window的异常void __fastcall TMainForm::CreateWnd(){ TForm::CreateWnd(); ClassTree=new TTreeView(this); ClassTree->Parent=this;// 这儿当没重载基类的CreateWnd时不能引用ClassTree} 请前辈赐教一个服务的写法,谢谢 【Qreport】问题,TQRExpr这个控件中的计算问题????? StaticText 控件显示传递的全局变量 发布一个PASCAL解释器,大家指教一下哈 如何取出数据库最近日期? 我想把10多个表提前读入内存中,等待查询 简单数据库问题 DBGrid用鼠标移动列宽的响应事件是哪个? 什末情况下将会用到“消息机制”!来者有分! 如何实现SQL SERVER不同机器的相同结构的数据库数据汇集到一起去。 请教高人(40分相送)(东大阿尔派面试题) 如何实现两库字段内容修改?
也可以直接写
NODE := TREEVIEW.ITEMS.ADD(NIL,'北京') ;
这样NODE 就是指北京这个节点
找一个晚一点执行的事件试试
nil就是空的意思了。一开始,treeview里为空了。
treeview.create后treeview就创建了,只不过没有节点而已,并不是空的
//需要重载基类的CreateWnd,当它返回时表明所有元件创建完毕
//否则会出现一个Control has no parent window的异常
void __fastcall TMainForm::CreateWnd()
{
TForm::CreateWnd(); ClassTree=new TTreeView(this);
ClassTree->Parent=this;// 这儿当没重载基类的CreateWnd时不能引用ClassTree
}