+ -
当前位置:首页 → 问答吧 → 求教:DBGrid里的多条记录的多条字段内容如何显示到Memo的多行中?

求教:DBGrid里的多条记录的多条字段内容如何显示到Memo的多行中?

时间:2011-12-12

来源:互联网

本人用ADOQuery查询某表格后得到的查询结果显示到DBGrid中。为了得到DBGrid中的多条记录中非零的“原因概率”字段和该记录的“原因”字段内容,重新提取出来,把每条记录的原因和结论作为一行新记录,写入Memo中,得出Memo中的多行文字性记录。例如:第i条符合要求的记录的原因概率为“0.8”,原因为“质量不平衡”,这样就要在Mmeo的第i行显示“质量不平衡,0.8”。Memo要列出全部n条原因。请问各位大神该如何编写程序啊?着急!

作者: niqueen   发布时间: 2011-12-12

循环添加到Memo中,比如概率字段是A,原因字段是B

Memo.Clear;
With ADOQuery Do
Begin
 IF FieldByName('A').AsFloat>0 Then //只要大于0的
  Memo.Lines.Add(FieldByName('B').AsString+','+FloatToStr(FieldByName('A').AsFloat));
  Next;
End;

作者: kaikai_kk   发布时间: 2011-12-12

上面有点错误

Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo.Clear;
  With ADOQuery Do
  Begin
   DisableControls;
   First;
   While not Eof do
   Begin
      IF FieldByName('A').AsFloat>0 Then {只要大于0的}
        Memo.Lines.Add(FieldByName('B').AsString+','+FloatToStr(FieldByName('A').AsFloat));
      Next;
    End;
  EnableControls;
  End;
end;

作者: kaikai_kk   发布时间: 2011-12-12