我现在用的是4.2.12,昨天发现一个严重错误,但是一时又找不到错误的源头,所以想看看4.2.20是不是已经改了这个错误,不料今早上他们的新闻组竟也上不去,无奈,只好回咱们Delphi大家庭来求助了有的兄弟能否发给我一份,感谢了
解决方案 »
- delphi中VCL组件库中的组件是COM组件吗?
- 文件夹拷贝的问题
- 为什么排序的过程速度这样慢?有没有改善的办法?
- 如何用这种方式进行文件检测
- 如何用Delphi写一个扫描网络上另一台机子端口开放的程序
- 我需要delphi数据库备份的源程序
- 請教怎麼寫delphi語句把word/excel/bmp等文件存入Oracle中的blob字段里去??
- 请教大虾:用mideaplayer来播放一首歌,如何用progressbar来表示进度?
- 我的Midas之路--2
- 谁能给我一个TOutlookBar的使用例子呀,50分相送!
- 通过clientdataset存储jpg到access
- 如何使form2中的edit中的内容赋值给form1中的listview的选中行的某一列
从新闻组下载的(后来也进不去了)。
我调用
TreeView.DeleteNode(aNode, True);触发TreeView一系列调用,最后问题出在这个函数:function TBaseVirtualTree.GetDisplayRect(Node: PVirtualNode; Column: TColumnIndex; TextOnly: Boolean;
Unclipped: Boolean = False): TRect;
var
Temp: PVirtualNode;
Offset: Cardinal;
Indent,
TextWidth: Integer;
MainColumnHit,
Ghosted: Boolean;
CurrentBidiMode: TBidiMode;
CurrentAlignment: TAlignment;begin
Assert(Assigned(Node), 'Node must not be nil.');
Assert(Node <> FRoot, 'Node must not be the hidden root node.'); MainColumnHit := (Column + 1) in [0, FHeader.MainColumn + 1];
if not (vsInitialized in Node.States) then
InitNode(Node); Result := Rect(0, 0, 0, 0);
// Check whether the node is visible (determine indentation level btw.).
Temp := Node;
Indent := 0;
while Temp <> FRoot do
begin
//在取Temp.Parent.States值的时候发生异常,因为有时候Temp.Parent = nil,
//我就弄不明白,Temp <> FRoot,但是Temp.Parent = nil
//我添加子节点一直都是用它的AddChild方法添加的
if not (vsVisible in Temp.States) or not (vsExpanded in Temp.Parent.States) then
Exit;
Temp := Temp.Parent;
if MainColumnHit and (Temp <> FRoot) then
Inc(Indent, FIndent);
end;
...
end;这个问题应该很多用家都碰到的,新版本很可能修改了这个问题