帮忙看看!!!
我在开头定义啦TTreeNodeEx
type
TTreeNodeEx=Class(TTreeNode)
public
levels:string;
ArticleClass:string;
end;
在这函数中用到TTreeNodeEx
procedure TfrmArticleManage.CreateTvWithData;
var
Items:array[0..25] of TTreeNodeEx;
Index:integer;
begin
TVArticle.Items.BeginUpdate;
TVArticle.Items.Clear;
try
Items[0]:=TTreeNodeEx(TVArticle.Items.Add(nil,'文章分类目录树'));
Items[0].ImageIndex:=2;
Items[0].SelectedIndex:=2;
with TVQuery do
begin
While Not Eof do
begin
Index:=Length(trim(FieldByName('MLCJ').AsString)) div 4;
Items[Index]:=TTreeNodeEx(TVArticle.Items.AddChild(Items[Index-1],FieldByName('MLMC').AsString));
//***********************现在下面两名出错:信息如下:
/*Access violation at address 0040421A in module 'article.exe'.Reader of address FFFFFFFA */
Items[Index].levels:=FieldByName('MLCJ').AsString;
Items[Index].ArticleClass:=FieldByName('WZLX').AsString;
//***********************
Items[Index].SelectedIndex:=4;
Items[Index].ImageIndex:=4;
Next;
Application.ProcessMessages;
end;
end;
finally
TVArticle.Items.GetFirstNode.Expand(false);
TVArticle.Items.EndUpdate;
end;
end;