我有一段代码,要根据不同的状态在drawgrid中显示不同的图片,但是如果连接数据库时,只显示第一行,不连则可以显示全部,而且,系统还没有反应,为什么呢?希望大家能帮我解答一下。
代码如下:
var
  bmp:TBitmap;
  i,j:integer;
begin
  bmp:=TBitmap.Create;
  bmp.LoadFromFile('D:\PIC\1.bmp');  //装入图像
  for i:=0 to drawgrid1.RowCount-1 do
    for j:=0 to drawgrid1.ColCount-1 do
    begin      ADoquery1.Close;
      adoquery1.SQL.Clear;
      adoquery1.SQL.Add('select wms_loc_status from wms_loc_mst where wms_row=:row and wms_col=:col');
      adoquery1.Parameters.ParamByName('row').Value:=i+1;
      adoquery1.Parameters.ParamByName('col').Value:=j+1;
      if not adoquery1.Prepared then adoquery1.Prepared;
      //  adoquery1.Open;      rect:=drawgrid1.CellRect(j,i);
      //if adoquery1.FieldByName('wms_loc_status').AsString='空货位' then
        drawgrid1.Canvas.Draw(rect.Left,rect.Top,bmp);  //在每个单元格中画出
    end;
end;谢谢大家