用TRQPreview自己做。
--------------------  
请搜索主题为“。。激活报表的Preview窗口?”的问题,我在这个问题中提供了完整的源代码,可以自己修改。

解决方案 »

  1.   

    自带的不行,你可以用TRQPreview控件加入你自己的继承的窗体上实现。
      

  2.   

    自定义一个继承自TQRStandardPreview的预览窗体
    TForm_Preview = class(TQRStandardPreview),然后打开qrprev.dfm文件查找next page、print等按钮的对象名,
    假设找到的对象名为:NextPage、Print;在TForm_Preview中定义你自己的NextPage、Print的点击事件方法
    方法原型:
      void __fastcall TForm_Preview::MyNext(TObject * Sender);
      void __fastcall TForm_Preview::MyPrint(TObject * Sender);在TForm_Preview类的构造函数中将NextPage、Print的点击事件指向你自己的事件方法
    如:
      NextPage->OnClick=MyNext;
      Print->OnClick=MyPrint;如此,当你在你的预览窗体里点击next page、print等按钮时,就会调用你的MyNext、
    MyPrint中的代码。
      

  3.   

    用自己写的窗体实现吧,不过直接的next也不可能马上实现数据在quickrep的更新,可能还要触发一次preview事件
      

  4.   

    我点“下一条”代码:
        form2.adoDataSet1.next;
        form2.QuickRep1.DataSet:=form2.AdoDataSet1;
        form2.QRLabel1.caption:=Form2.AdoDataSet1.FieldbyName('name').asString;
        form2.QuickRep.Preview;
    procedure TForm2.QuickRep1Preview(Sender: TObject);
    begin
        form3.QRPreview1.QRPrinter :=self.QuickRep1.Printer ;
        form3.show;
    end;
    procedure TForm2.QuickRep1NeedData(Sender: TObject; var MoreData: Boolean);
    begin
         self.ADODataSet1.Next;
         if adodataset1.Eof then
         MoreData:=false
         else
         moreData:=true;
    end;
    procedure TForm2.QuickRep1BeforePrint(Sender: TCustomQuickRep;
      var PrintReport: Boolean);
    begin
    AdoDataSet1.First;
    end;form3的QRPreview总是显示最后一条记录。为什么? 
      

  5.   

    你要源代码吗?
    我有一个用QRPriview写的代码
      

  6.   

    好呀。我要:)
    [email protected]
    另外我的代码哪不对呀?
    //-----Unit1-----------
    procedure TForm1.Button1Click(Sender: TObject);
    begin
        form2.ADODataSet1.CommandText :='select * from Bjiao_jingY';
        form2.ADODataSet1.Active :=true;
        form2.ADODataSet1.First;
        //form2.QuickRep1.DataSet :=nil;
        form2.QRLabel1.caption:=form2.ADODataSet1.fieldbyname('业户名称').AsString ;
        form2.QuickRep1.Preview ;
    end;
    //-------unit2--------
    procedure TForm2.QuickRep1NeedData(Sender: TObject; var MoreData: Boolean);
    begin
         self.ADODataSet1.Next;
         if adodataset1.Eof then
         MoreData:=false
         else
         moreData:=true;
    end;procedure TForm2.QuickRep1Preview(Sender: TObject);
    begin
        form3.QRPreview1.QRPrinter :=self.QuickRep1.Printer ;
        form3.show;
    end;procedure TForm2.QuickRep1BeforePrint(Sender: TCustomQuickRep;
      var PrintReport: Boolean);
    begin
    AdoDataSet1.First;
    end;
    //-----unit3----
    procedure TForm3.Button1Click(Sender: TObject);
    begin
        //form2.ADODataSet1.Next;
        //form2.QuickRep1.DataSet :=nil;
        form2.QRLabel1.Caption :=form2.ADODataSet1.fieldbyname('业户名称').AsString ;
        form2.QuickRep1.Preview ;
    end;
    //-----dfm文件--
    Form1上有一个button1
    form2上有QuickREp和AdoDataSet1,设置好了AdoDataSet1的ConnctionString
    form3上有QRPreview1 和一个button1
    还是不行!点按钮后,总是显示最后一条记录
      

  7.   

    好了,好了,终于试出来了。我真是太愚了,谢谢,各位帮忙了!!!:看下面代码://-----Unit1-----------
    procedure TForm1.Button1Click(Sender: TObject);
    begin
        form2.ADODataSet1.CommandText :='select * from Bjiao_jingY';
        form2.ADODataSet1.Active :=true;
        form2.ADODataSet1.First;
        //form2.QuickRep1.DataSet :=nil;
        form2.QRLabel1.caption:=form2.ADODataSet1.fieldbyname('业户名称').AsString ;
        form2.QuickRep1.Preview ;
    end;//---------------Unit2---------
    procedure TForm2.QuickRep1Preview(Sender: TObject);
    begin
        form3.QRPreview1.QRPrinter :=self.QuickRep1.Printer ;
        form3.show;
    end;
    //----Unit3-----------
    procedure TForm3.Button1Click(Sender: TObject);
    begin
        form2.ADODataSet1.Next;
        //form2.QuickRep1.DataSet :=nil;
      
        form2.QRLabel1.Caption :=form2.ADODataSet1.fieldbyname('业户名称').AsString ;
        form2.QuickRep1.Preview ;
    end;
      

  8.   

    用我的打印预览控件可以轻松搞定,而且很简单、截面也完全个性化,并且是微软office风格.国人最好的打印预览控件,有VC++、VB、DELPHI、BCB四个版本。欢迎索取。请留下你的EMAil