我现在必须用quickrep,我用的是6.0,帮帮忙!

解决方案 »

  1.   

    我可以提供一个控件给你,安装即可用了。但是你要给分了,我的email是[email protected].
    将此文本拷贝过去存盘为。*.pas,安装该控件计可用了。
    unit MyQRShape;interfaceuses
    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    QuickRpt, Qrctrls, ppPrnabl, ppClass, ppCtrls,
      ppBands, ppCache, ppComm, ppRelatv, ppProd, ppReport;type
    TLines = ( None,TopBottom,BottomTop ) ;TMyQRShape = class(TppShape)
    private
    FLineType:TLines ;
    procedure SetFLineType(Value:TLines) ;
    protected
    procedure Print(OfsX, OfsY : integer); override;
    procedure Paint ;Override ;
    publicpublished
    property LineType:TLines Read FLineType Write SetFLineType ;
    end;procedure Register;implementationprocedure TMyQRShape.SetFLineType(Value:TLines);
    begin
       if Value<>FLineType then
       begin
         FLineType:=Value ;
         Invalidate ;
       end ;
    end ;procedure TMyQRShape.Paint ;
    begin
      case LineType of
      BottomTop:
        begin
          Canvas.MoveTo(0,Height) ;
          Canvas.LineTo(width,0 ) ;
        end ;
      TopBottom:
        begin
          Canvas.MoveTo(0,0) ;
          Canvas.LineTo(width,Height ) ;
        end ;
      None:
        begin
          Height := Parent.Height ;
          Top:=0 ;
          Width:=4 ;
          Shape:=qrsVertLine ;
          Inherited Paint ;
        end ;
      end ;
    end ;procedure TMyQRShape.Print(OfsX,OfsY : Integer);
    begin
      with QRPrinter do
      begin
       case LineType of
       BottomTop:
          begin
            Canvas.MoveTo(XPos(OfsX + Size.Left), YPos(OfsY + Size.Top)+Height) ;
            Canvas.LineTo(XPos(OfsX + Size.Left)+width,YPos(OfsY + Size.Top) ) ;
          end ;
       TopBottom:
          begin
             Canvas.MoveTo(XPos(OfsX + Size.Left), YPos(OfsY + Size.Top)) ;
             Canvas.LineTo(XPos(OfsX + Size.Left)+Width,YPos(OfsY + Size.Top)+Height ) ;
          end ;
       None:
          Inherited Print(OfsX,OfsY ) ;
       end ;
      end ;
    end;procedure Register;
    begin
       RegisterComponents('rbuilder', [TMyQRShape]);
    end;
    end.