Компонент чата в TRichView
Показать или спрятать менюTRichView.ru
English | Deutsch | Español | Русский

  Компоненты TRichView для создания чата

TRichView включает компонент TRVChat, предназначенный для создания современных интерфейсов чата на основе движка форматированного текста TRichView. Он позволяет отображать переписку в стиле популярных мессенджеров (таких как Telegram, WhatsApp или Viber) прямо в ваших приложениях Delphi или Lazarus.

Отображение сообщений

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

Окно чата TRichView

Профили пользователей

Каждое сообщение связано с объектом пользователя, который определяет:

  • имя и аватар пользователя;
  • выравнивание сообщений (слева или справа);
  • цвета пузырей, цитат и иконок файлов.

Взаимодействие

TRVChat предоставляет встроенную логику для:

  • редактирования и удаления сообщений;
  • ответов с цитатой или без;
  • отображения статуса сообщений (отправлено, прочитано, ошибка);
  • выделения сообщения для дальнейших действий (редактирование, удаление, цитирование и т.п.);
  • поиска текста в истории чата.

Вложения и цитаты

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

Окно чата TRichView: цитата и вложенное изображение Окно чата TRichView: цитата и вложенное изображение

Можно прикрепить готовое изображение или вставить временную картинку-заполнитель, которую позже можно заменить – например, после загрузки картинки с сервера.

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

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

Настройка внешнего вида

Можно настроить все элементы оформления:

  • форму пузырей, радиус скругления, тип и размер стрелки, тень;
  • отступы между сообщениями и группами пользователей;
  • шрифты, цвета и оформление строк даты и статуса;
  • фоновое изображение.

Кроссплатформенность

TRVChat доступен для VCL, FireMonkey (все платформы) и Lazarus (Windows).

Интеграция

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

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

Сетевые функции не входят в TRVChat – их можно реализовать с помощью любых подходящих библиотек, например RVMedia.