Puedes probar con la función MessageDlg, que te ofrece algunas opciones que no te ofrece ShowDialog, como especificar un icono para el diálogo (información, error, exclamación, etc.), el tipo de botones, etc.
Puede que te interese también descargar cierto "add-on" para Delphi (para varias versiones) de nombre
GExperts. Añade no pocas herramientas al IDE de Delphi y, entre otras, un asistente para generar diálogos en base a la función susomentada. Por cierto que este "add-on" es de "código abierto".
Y acaso no te parezca mal este
Koan (nº 4) de
Ian Marteens que describe alguna curiosidad acerca del procedimiento ShowDialog y de la función MessageDlg: no tiene mucho que ver con lo que preguntas, pero lo leí ayer mismo y se me ocurre referirlo aquí por si puede resultar de interés.