Выходит интернетчик из туалета и довольный, говорит: Upload Completed.
SendMessage(Memo.Handle, EM_REPLACESEL, 0, PCHAR('Delphi World - это КРУТО!'));
Var TempBuf :Array [0..255] of Char;
SendMessage(Memo.Handle, EM_REPLACESEL, 0, StrPCopy(TempBuf,'Delphi World - это КРУТО!'));
Memo1.SelText := 'Delphi World - ýòî ÊÐÓÒÎ!';
Here's a translation of the content into Russian:
Код на Delphi: вставка текста в компонент TMemo (RichEdit) на текущей позиции курсора.
Разбивка кода:
SendMessage(Memo.Handle, EM_ReplaceSel, 0, PCHAR('Delphi World - это КРУТО!'));
Эта строка использует функцию Windows API SendMessage для отправки сообщения в контрол TMemo.
Сообщение EM_ReplaceSel отправляется для замены текущей выделенной области в редактируемом контроле текстом, указанным ниже.
Типкастр PCHAR используется для передачи строкового литерала как указателя на массив символов.
Var TempBuf: Array [0..255] of Char; SendMessage(Memo.Handle, EM_ReplaceSel, 0, StrPCopy(TempBuf, 'Delphi World - это КРУТО!'));
Эта строка создает массив TempBuf из 256 символов и копирует строковый литерал в него с помощью StrPCopy.
Остальная часть кода аналогична первой примеру.
Memo1.SelText := 'Delphi World - это КРУТО!';
Эта строка устанавливает текст, выделенный в контроле TMemo, в указанный текст.
Альтернативное решение:
Вместо использования SendMessage с EM_ReplaceSel, можно использовать метод Insert компонента TMemo:
Memo1.Insert(Memo1.SelStart, 'Delphi World - это КРУТО!');
Метод Insert вставляет указанный текст на позицию, указанную в SelStart, которая является текущей позицией курсора.
Обратите внимание, что в Delphi можно также использовать свойство Lines компонента TMemo для вставки текста. Например:
Memo1.Lines.Insert(Memo1.SelStart, 'Delphi World - это КРУТО!');
Метод Insert аналогичен методу Insert, но использует свойство Lines вместо него.
В статье описывается несколько способов вставки текста в TMemo компонент в Delphi, включая использование SendMessage и изменения свойства SelText.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.