Home Devices
New Blog Posts: Merging Reports - Part 1 and Part 2

How to access the preview form's standardtoolbar ?

edited September 2005 in Devices
If I try something like:
TppReport(r).PreviewForm.StandardToolbar.Color:=xxx;

The compiler say
Undeclared identifier: 'StandardToolbar'

I already include ppViewr,ppPreview in my uses clauses.


Thanks

Heraldo

Comments

  • edited September 2005
    Hi Heraldo,

    If you typecast the Report.PreviewForm property as a TppPrintPreview object
    you can gain access to the speedbutton properties defined in the public
    section of that class (ppPrvDlg.pas).

    In order to get access to the actual toolbar panel, you will need to create
    a preview plugin. See the article below for more information.

    -----------------------------------------
    Article: Creating a Preview Plugin
    -----------------------------------------

    Q: I've followed the tutorials and registered a Preview Form replacement but
    that did not affect the TppDesigner's Preview workspace.


    A: Do not use the form replacement, but rather, there is a different
    architecture built into the preview form that is registered by default.



    You will need to register a TppPreview descendent. The class you register
    is used to create the preview controls inside the standard print preview
    form and the designer preview workspace.


    Here is an example of creating a simple custom preview that access the
    viewer its been assigned in order to change the page color. You can also do
    more advanced operations such as adding and removing buttons and change the
    behavior of the preview form. Access the inherited controls via. protected
    properties and override the virtual methods in order to customize behavior.

    Open ppPreview.pas and view the TppPreview class as a guide to create a
    custom preview descendent.


    unit MyPreviewPlugin;

    interface

    uses
    ppPreview;

    type
    TMyPreviewPlugin = class(TppPreview)
    public
    procedure BeforePreview; override;

    end;


    implementation

    uses
    Graphics;


    procedure TMyPreviewPlugin.BeforePreview;
    begin
    inherited BeforePreview;

    Viewer.PageColor := clRed;

    end;

    initialization
    TppPreviewPlugIn.Register(TMyPreviewPlugin);

    finalization
    TppPreviewPlugIn.UnRegister(TMyPreviewPlugin);

    end.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
This discussion has been closed.