delphi中有一段小的程序,就是下拉框选中一个值来进行检索,但出现以下问题提示(“could not convert variant of type (Array Variant) into type (String)”) 
程序如下: 
procedure TForm10.Button1Click(Sender: TObject); 
begin 
  with form4.ADOTable2 do 
  locate('配件名称', VarArrayOf([dblookupcombobox1.Text]),[]); 
end; 
请大虾们帮我看看 急死我了  怎么改啊  谢谢谢谢

解决方案 »

  1.   

    好像 可以不用 VarArrayOf 
      

  2.   

    ADOTable1.Locate ('配件名称',DBLookupComboBox1.Text,[]);
    没有报错啊!!
      

  3.   


    procedure TForm10.Button1Click(Sender: TObject); 
    begin 
      with form4.ADOTable2 do 
      locate('配件名称', dblookupcombobox1.Text),[]); 
    end; 
    试下
      

  4.   

    ADOTable1.Locate('配件名称', '车轴',[]);直接给值
      

  5.   

    我试过了,但还是不能把统计的结果都显示出来,这个只是指针指到第一个值。比如我 dblookupcombobox1的值选择“内存”,怎样把我报表中的内存都调出来??
      

  6.   

    Locate();只能得到第一个值 !!!就是这样的
    需要查到所有符合记录,建议用SQL语句查询获得
      

  7.   

    Locate('F_Bm;F_Date', VarArrayOf([Edt_qt.Text  ,Edt_Rq.Text ]))
    只能得到第一个值 
      

  8.   

    locate是用来定位的
    检索使用Filter,Filteredwith ADOTable2 do
    begin
      Filtered := false;
      Filter := '配件名称:=''' + ComboBox1.Text + '''';
      Filtered := true;
      Refresh;
    end
      

  9.   

    可以了,谢谢,不过 楼上这位好心人有一点错误,就是最后面不是 refresh,而是 open;