以下在分栏打印代码: procedure TFrmrpttoll.QuickRep1NeedData(sender: TObject; var MoreData: Boolean); var I: integer; begin MoreData := True; for I := 0 to 1 do begin if dmdata.qryuser.eof then Break; quickrep1.Refresh; case I of 0:QRLabel17.Caption := dmdata.qryuser.fieldbyname('用户姓名').asstring; 1:QRLabel18.Caption := dmdata.qryuser.fieldbyname('用户姓名').asstring; end; dmdata.qryuser.Next; end; if dmdata.qryuser.eof then MoreData := False; end;
procedure TFrmrpttoll.QuickRep1NeedData(sender: TObject; var MoreData: Boolean); var I: integer; begin MoreData := True; for I := 0 to 1 do begin if dmdata.qryuser.eof then Break; quickrep1.Refresh; case I of 0:QRLabel17.Caption := dmdata.qryuser.fieldbyname('用户姓名').asstring; 1:QRLabel18.Caption := dmdata.qryuser.fieldbyname('用户姓名').asstring; end; if dmdata.qryuser.eof then MoreData := False; dmdata.qryuser.Next; //移到此处 end; end;
----------------------------------------------
春花秋月何時了
兄弟,以下这句是什么意思:是不是就是那两栏中的用户名? 可我这样用了,左右两栏还是打印一样的,都打了两次。 当去掉quickrep1的dataset后只能打印前冇一条记录了。怎么会这样呢? case I of 0:QRLabel17.Caption := dmdata.qryuser.fieldbyname('用户姓名').asstring; 1:QRLabel18.Caption := dmdata.qryuser.fieldbyname('用户姓名').asstring;
----------------------------------------------
春花秋月何時了
我这样写却又多打了一个,真搞不明白 var I: integer; begin MoreData := True; for I := 0 to 1 do begin if adoquery1.eof then MoreData := False; quickrep1.Refresh; case I of 0: begin a.Caption := adoquery1.fieldbyname('产品名称').asstring; c.Caption := adoquery1.fieldbyname('库存数量').asstring; end; 1: begin b.Caption := adoquery1.fieldbyname('产品名称').asstring; d.Caption := adoquery1.fieldbyname('库存数量').asstring; end; end; adoquery1.Next; if adoquery1.eof then Break; end;
----------------------------------------------
春花秋月何時了
var I: integer; begin MoreData := True; for I := 0 to 1 do begin if adoquery1.eof then begin MoreData := False; break; //到达末尾后就退出,不再执行以下语句 exit; end; quickrep1.Refresh; case I of 0: begin a.Caption := adoquery1.fieldbyname('产品名称').asstring; c.Caption := adoquery1.fieldbyname('库存数量').asstring; end; 1: begin b.Caption := adoquery1.fieldbyname('产品名称').asstring; d.Caption := adoquery1.fieldbyname('库存数量').asstring; end; end; adoquery1.Next; if adoquery1.eof then Break; end;
----------------------------------------------
春花秋月何時了
var I: integer; begin MoreData := True; for I := 0 to 1 do begin if adoquery1.eof then begin if(adoquery1.recordcount mod 2=1) then //如果库是记录是奇数条 begin a.hide;//隐藏右边的控件 c.hide; //a.caption:='';我改成这样了都不行 //c.caption:=''; end; MoreData := False; break; //到达末尾后就退出,不再执行以下语句 exit; end; quickrep1.Refresh; case I of 0: begin a.Caption := adoquery1.fieldbyname('产品名称').asstring; c.Caption := adoquery1.fieldbyname('库存数量').asstring; end; 1: begin b.Caption := adoquery1.fieldbyname('产品名称').asstring; d.Caption := adoquery1.fieldbyname('库存数量').asstring; end; end; adoquery1.Next; if adoquery1.eof then Break; end;