1、用qrrichtext组件,在放一个DBMemo,在数据集的ONAfterScroll里加上
frmrpcard.QRrichtext1.Lines.Assign(frmrpcard.DBMemo.Lines);

解决方案 »

  1.   

    我不知道,方正QRDBMEMO不能换行
      

  2.   

    换行就用QRMemo
    内容合并就在QRLabel的BeforePring中编程了
      

  3.   

    关注!
    qr3的QRDBTEXT如何实现自动会行(中文)??
      

  4.   

    在DITAL中可以换行合并的话你可以用一个字段值等于另两个字段的值!选QREXPR控件可实现!
      

  5.   

    据我研究,MEMO,LABEL是在遇到空格的时候才换行的。
    比如:输出wwwwwwwwwww 长度超过了控件的长度时不会换行,只会按照控件的长度截断
    但输出wwwww wwwwwwww长度超过了控件的长度时可以换行,为wwwww
                                                       wwwwwwwww
    所以尽量避免超出长度。实在要的话,只能够写一个函数,在控件能够容纳的最大字符的地方,给Insert(...)插入一个空格。
      

  6.   

    使用两个不就得了,超过了规定长度就把它裁开放到下一个LABEL中。
      

  7.   

    QRLabel1.AutoSize  := False;
      QRLabel1.AutoStretch := True;
      

  8.   

    同 redleafwj(红叶) 意见
      

  9.   

    1:
    ////////////////////////////////////////////////
    Function MitiLine (Str:String;N:Integer):String;
    var
    L,I:Integer;
     Strs:String;
    Begin
         L:=Length(Str);
         L:=Round(L/N+0.5);
         If L=0 Then
         begin
              Result:=Str;
              Exit;
         End;
         For I:=1 To L Do Strs:=Strs+Copy(Str,N*(I-1)+1,N)+#13#10;
         Result:=Strs;
     End;
    //////////////////////
    ........................adoquery的lock type=ltBatchOptimistyic
     ADOQuery6.First;
       for j:=1 to ADOQuery6.RecordCount do
      begin
           ADOQuery6.Edit;
          str:=ADOQuery6.Fields[2].AsVariant;
          str:=MitiLine(str,10);//////每隔5个中文字加空格
           ADOQuery6.Fields[2].AsVariant:=str;
           ADOQuery6.Next;
        end;
     print.QuickRep1.Preview;