小弟今天写了一个程序,就是listview从文件导入数据的问题,虽然函数处理正确, 但listview就是不显示结果,为什么? 程序如下:
function TMyCommon.LoadMappingFile(myListView:TListView):boolean;
var
  LoadDlg:TOpenDialog;
  tmplist:TStringList;  
  FileName:string;
  iPos,j:integer;                 //文件位置标志变量
  tmpLine,tmpstr:string;          //存储读的每一行字符串
  tmpListItem:TListItem;          
begin
  tmplist := TStringList.create;
  LoadDlg := TOpenDialog.Create(Application);
  LoadDlg.Filter:='bbf files (*.bbf)|*.bbf' ;
  if loaddlg.Execute then
    FileName := loaddlg.Filename;
  if FileName = '' then
  begin
    result := false;
    MessageDlg('文件不存在或者运行期错误', mtError, [mbYes,mbNo], 0);
    exit;
  end
  else
  begin
    tmplist.LoadFromFile(filename);
    myListView.Items.Clear;
    if tmplist.count > 0 then
    begin
      for j:=0 to tmplist.count-1 do
      begin
        tmpListItem := myListView.Items.Add;
        iPos := 0;
        tmpLine := tmplist.strings[j];
        iPos := pos('$', tmpLine);
        tmpstr := midstr(tmpline, 1, iPos-1);
        tmpListItem.caption := tmpstr;
        Delete(tmpline,1, iPos);        iPos := pos('$', tmpLine);
        while (iPos > 0) do
        begin
          tmpstr := midstr(tmpline, 1, iPos-1);
          tmpListItem.SubItems.Add(tmpstr);
          Delete(tmpline,1, iPos);
          iPos := pos('$', tmpLine);
        end; //while         
       end;  //for    
    end;    //the second if
    result := true;
  end;       //else
  
  tmplistItem.Free;
  tmplist.Free;
 
  
      
  
end;