procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessageFmt('This is %s.'#13'Handle: %.8x '#13'WindowProc: %p',
[Caption, Handle, @WindowProc]);
end;
%s — вместо нее подставляется первый параметр из
[], приведенный к типу String %.8x — подставляется целое, переведенное в
16-ричную систему, дополненное слева нулями до 8-ми цифр %p —
подставляется указатель
Пример использования функции ShowMessageFmt!
В этом примере обработчик события Button1Click использует ShowMessageFmt, чтобы отобразить сообщение с форматированным текстом. Функция принимает два основных параметра:
Шаблон форматирования (шаблон с placeholders для значений)
Массив значений, которые нужно подставить в шаблон
Давайте разберемся:
%s: заменяется на первый элемент массива (Caption, тип String), конвертируемый в строку.
#.8x: заменяется на целочисленное значение (Handle, тип Int64), конвертируемое в 8-значную шестнадцатеричную строку.
%p: заменяется на адрес функции WindowProc.
Когда вы запустите это код и нажмете кнопку, сообщение будет отображаться с форматированным текстом, например:
Это <Caption>. Handle: 0x<hexadecimal handle> WindowProc: <address>
Замените <Caption> на актуальное название вашего окна, <hexadecimal handle> на актуальную шестнадцатеричную строку значения Handle (например, 0x12345678) и <address> на актуальный адрес функции WindowProc.
Местоимения %s, .8x и %p заменяются соответствующими значениями из массива, которые затем отображаются в сообщении. Это позволяет создавать более компактный и читаемый код, а также обеспечивает гибкость в форматировании вывода.
Если вы хотите отобразить другой текст или использовать дополнительные опции форматирования, вы можете модифицировать шаблон форматирования и массив значений соответственно. Например, вы можете добавить еще одно местоимение %s и дополнительное значение, чтобы включить название формы:
Надеюсь, это поможет вам понять, как работает ShowMessageFmt!
Функция ShowMessageFmt в Delphi позволяет выводить сообщения с форматированным текстом, заменяя специальные символы на передаваемые параметры типа String, целого или указателя.
Комментарии и вопросы
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.