# Message Dialogue Components
ReadMe

## Description

This unit implements two customisable message dialogue box components. They are:

- TPJWinMsgDlg
  This component wraps the Windows MessageBoxIndirect API call and displays a message box based on that provided by Windows. It will be suitable for most purposes and has the lighter footprint.
- TPJVCLMsgDlg
  This component uses the Delphi VCL CreateMessageDialog function to create a form based message box. (CreateMessageDialog is used by the standard Delphi MessageDlgXXX functions). The component provides more flexibility than either the Delphi functions or TPJWinMsgDlg. It should be used when it is necessary to display buttons or combinations of buttons that are not supported by the Windows API message box or when a finer degree of control over the appearance and behaviour of the message box is required. TPJVCLMsgDlg supports all the features of TPJWinMsgDlg and extends them. The dialogue box component's form can be customised by handling the OnShow and OnHide events.

## Compatibility

The components have been tested with the 32-bit Windows compiler of Delphi 7 and Delphi 2006 to XE4 and the the 64-bit Windows compiler of Delphi XE2 to XE4. They are believed to compile with any version of Delphi from Delphi 4 onwards but this has not been tested.

The unit has dependencies on the VCL and therefore cannot be used with the FireMonkey framework or with non-Windows targets.

## Installation

The Message Dialogue Components and their associated files are supplied in a zip file. Before installing you need to extract all the files from the zip file, preserving the directory structure. The following files will be extracted:

- `PJMessageDialog.pas` – component source code.
- `PJMessageDialog.dcr` – component palette glyphs.
- `ReadMe.htm` – this file.
- `ChangeLog.txt` – project change log.
- `MPL-2.txt` – the Mozilla Public License v2.0.
- `Documentation.url` – short-cut to the components' online documentation.

In addition to the above files you will find the source code of the demo project in the `Demo` sub-directory.

You can now install the components into the Delphi IDE. To do this, the files `PJMessageDialog.pas` and `PJMessageDialog.dcr` should be added to a design time package. If you need help doing this see here.

## Documentation

Documentation has comprehensive online documentation.

## Demo Program

A demo program that exercises the components is included in the download.

This demo requires Delphi 7 as a minimum.

For more information about the demo see the file `ReadMe.txt` in the `Demo` directory.

## Update History

A complete change log is provided in a text file that is included in the download.

## License

The Message Dialogue Components are released under the terms of the Mozilla Public License v2.0.

All relevant trademarks are acknowledged.

## Bugs and Feature Requests

Bugs can be reported or new features requested via the Issue Tracker.

If no similar report or request has been recorded already, use the New Issue link to add a new issue. Please select the most appropriate template from the Templates drop down list.

## About the author

I'm Peter Johnson – a hobbyist programmer living in Ceredigion in West Wales, UK, writing write mainly in Delphi. My programs and code are available from http://www.delphidabbler.com/.

I can be contacted via the website.

Please let me know if you have any comments about the component, but please use the Issue Tracker noted above to report bugs and request new features.
This document is copyright © 2005-2014, P D Johnson, www.delphidabbler.com