rvchat TRVChat

Свойства   Методы   События

<< Нажмите, чтобы показать Содержание >>

rvchat TRVChat

Свойства   Методы   События

Этот компонент предназначен для отображения чата с возможностью добавлять, редактировать и удалять сообщения, а также отвечать на них. Сообщения могут содержать прикреплённые изображения или файлы.

Это невизуальный компонент, который связывается с компонентом TRichView и управляет его содержимым и отображением.

Модуль [VCL/FMX] RVChat / fmxRVChat.

Синтаксис

TRVChat = class(TComponent)

Иерархия

TObject

TPersistent

TComponent

Как использовать

Чтобы чат выглядел привлекательно, границы линий и областей должны быть сглажены. В версии FireMonkey для мобильных платформ рекомендуется использовать Skia4Delphi. В версиях VCL и Lazarus рекомендуется включить рисование с помощью GDI+ (для Delphi XE2 и новее добавьте модуль RVGDIPlusGrIn в секцию uses; для Lazarus — RVGDIPlusGrInLaz).

Присвойте свойству ChatRichView компонент TRichView, в который будут добавляться сообщения.

Задайте нужные значения свойств, влияющих на внешний вид чата, а затем вызовите метод AddStyles (это необходимо сделать до начала работы с чатом).

Заполните коллекцию Users.

Добавляйте сообщения по одному с помощью метода AddMessage.

Обрабатывайте щелчки мышью в чате и назначайте свойство HighlightedMessage.

Используйте HighlightedMessage для реализации редактирования сообщений, ответов, цитирования и удаления:

▪редактирование: ChangeMessageText;

▪ответ и цитирование: используйте объект TRVChatMessageExtraQuote при следующем вызове AddMessage;

▪удаление: DeleteMessage или MarkMessageAsDeleted.

Приведённые выше инструкции описывают основные операции, доступные в чате. Чтобы подробнее ознакомиться с возможностями, см. описания свойств, методов и событий, а также демонстрационный проект в папке Assorted\Chat\.

Важная информация

Чат предназначен для отображения на экране. Не следует пытаться печатать ChatRichView на принтере.

Для отображения файла, прикреплённого к сообщению, используется специальный тип элемента документа TRVChatFileItemInfo (StyleNo = rvsChatFile).

Каждое сообщение представляет собой один абзац, который может содержать переводы строк. Чат автоматически распознаёт URL в тексте.

Лицензия на значки файлов

По умолчанию TRVChat использует Google Material Symbols and Icons для значков прикреплённых файлов.

Google Material Symbols and Icons распространяются по лицензии Apache, версия 2.0 («Лицензия»):

hmtoggle_arrow1Лицензия Apache, версия 2.0

Если вы не согласны с этими условиями, вы можете использовать TRVChat без прикреплённых файлов или предоставить собственные значки.

Ограничение

Отображение чата работает некорректно в Lazarus для Linux, поскольку его канва не содержит необходимых методов (вместо заполненных фигур будут отображаться только контуры).