vcl-dxpscore-dot-tcustomdxcomponentprinter-dot-addlinkex-x28-system-dot-classes-dot-tcomponent-system-dot-classes-dot-tcomponent-x29.md
Creates a new print link for the specified component and adds the created link to the collection.
function AddLinkEx(AComponent: TComponent; AOwner: TComponent): TBasedxReportLink;
| Name | Type | Description |
|---|---|---|
| AComponent | TComponent |
The target component for the created print link.
The function automatically selects the print link class that corresponds to the target component type if your project includes the unit (in Delphi) or header (in C++Builder) where the print link class is declared.
| | AOwner | TComponent |
The owner component for the created print link.
The owner component automatically deletes the associated print link when the application deletes the component. You can also call the DeleteLink procedure to delete the created print link.
|
| Type | Description |
|---|---|
| TBasedxReportLink |
The created print link.
Cast the returned object to the corresponding terminal print link class to access all public API members. The type of the target component (AComponent) determines the actual print link class.
Important
The function returns nil (in Delphi) or nullptr (in C++Builder) if one of the following conditions is met:
AComponent is not supported (has no registered print link classes).|
Call the AddLinkEx function to create a new print link and associate it with the required component (AComponent). Unlike AddLink the AddLinkEx function allows you to assign the required owner component to the created print link (AOwner).
Note
To use the AddLink or AddLinkEx function in your project, you need to include all units (in Delphi) or headers (in C++Builder) where all required print link classes are declared. AddLink and AddLinkEx functions return nil (in Delphi) or nullptr (in C++Builder) if they cannot find the corresponding print link class declaration.
The following code example creates a print link for an existing PDF Viewer control, prints its content without user interaction, and deletes the created print link:
uses
dxPSdxPDFViewerLnk; // Declares the TdxPDFViewerReportLink class
// ...
var
AReportLink: TBasedxReportLink;
begin
// Creates a PDF Viewer control print link and sets the application form as the link owner
AReportLink := dxComponentPrinter1.AddLinkEx(dxPDFViewer1, MyForm1);
try
AReportLink.Print(False); // Prints chart content without user interaction
finally
dxComponentPrinter1.DeleteLink(AReportLink.Index); // Deletes the print link after export
end;
end;
#include "dxPSdxPDFViewerLnk.hpp" // Declares the TdxPDFViewerReportLink class
// ...
TBasedxReportLink *AReportLink;
// Creates a PDF Viewer control print link and sets the application form as the link owner
AReportLink = dxComponentPrinter1->AddLinkEx(dxPDFViewer1, MyForm1);
try
{
AReportLink->Print(false); // Prints chart content without user interaction
}
__finally
{
dxComponentPrinter1->DeleteLink(AReportLink->Index); // Deletes the print link after export
}
See Also
TCustomdxComponentPrinter.AddEmptyLink Function
TCustomdxComponentPrinter.AddEmptyLinkEx Function
TCustomdxComponentPrinter Class