Функции вызова диалоговых окон с сообщениями.


Процедуры ShowMessage и ShowMessageFmt

В приложениях часто приходится отображать различные простые диалоговые окна, чтобы дать пользователю какие-то указания или задать несложный вопрос, на который возможен один стандартных ответов: да, нет, отменить, прервать. В законченном приложении желательно эти окна проектировать самому, обеспечивая единство стиля всех окон приложения, русские надписи на кнопках и т.п. Но в процессе разработки прототипа будущего проекта и в процессе отладки удобно пользоваться готовыми диалоговыми окнами и вызывающими их процедурами.
Простейшей из таких процедур является ShowMessage, отображающая окно сообщения с кнопкой OK. Ее объявление:
Void ShowMessage (const System::AnsiString Msg)

Текст сообщения задается параметром Msg. Заголовок окна совпадает с именем выполняемого файла приложения.
Имеется также похожая процедура ShowMessageFmt, позволяющая выводить в аналогичное окно форматированное сообщение. Объявление этой процедуры имеет вид:
Void ShowMessageFmt(const System::AnsiString Msg, const System::TVarRec *Params, const int Params_Size)

Параметр Msg в этой процедуре задает строку описания формата, а параметр Params и Params_Size задают массив параметров, форматируемых строкой строкой Msg, и размер этого массива. Для передачи массива в функцию удобно использовать макрос OPENARRAY. Тогда вызов функции ShowMessageFmt имеет вид:
ShowMessageFmt (Msg, OPENARRAY (TVarRec, (arg1, arg2,…)));

Примеры (рис.4):
ShowMessage(“Работа приложения успешно завершена”);

ShowMessageFmt(“Задано %d параемтров из %d”, OPENNARRAY(TvarRec, (N1,N2)));

Рис.4.1. Сообщение, выдаваемое функцией ShowMessage
Рис.4.2. Сообщение, выдаваемое функциями ShowMessageFmt