Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > RichEdit


Автор: FRAGNATIC 6.11.2004, 21:05
Как в RichEdit сделать подсветку определёных символов например "a" что бы когда этот символ набирался он сразу был определённого цвета

Автор: Pakshin A. S. 6.11.2004, 21:10
ПОЛЬЗУЙТЕСЬ ПОИСКОМ!!! Просмотрите все темы про RichEdit. Из них вы сможете без труда составить алгоритм подсветки!!!

Автор: Alex 6.11.2004, 21:17
Результат совместной работы Fanasist'а и меня. Это компонент для Дельфи для известного пакета SynEdit (http://synedit.sourceforge.net), позволяющий на лету создавать подкраску синтаксиса по любым правилам любых форматов (создание и загрузка в run-time, хранение шаблонов на диске). В настоящее время пакет включает в себя более 300 готовых шаблонов для наиболее распространённых форматов, но каждый может создать свой собственный шаблон (можно с помошью компонента или используя прилагающуюся утилиту). Пример использования - простенький текстовый редактор с поддержкой любых расскрасок.

Загрузить можно с:
http://chicago.lastplanet.com/unihighlighter.zip

Платформа: Delphi 5/6

Для работы необходимо установить предварительно установить пакет SynEdit (http://synedit.sourceforge.net).

Компонент свободен для распространения и поставляется с исходными кодами.

Логика работы:

Для подкраски синтаксиса необходимо предусмотреть следующие правила:
1) расскраска всего кода в промежутке от одного слова до второго - например комментарии /*...*/ или строки "...."
2) расскраска ключевых слов

Это реализовано, кроме того бывают ситуации когда промежуток должен быть расскрашен по другому с другими правилами например ASP код внутри HTML или ассемблерные вставки внутри Дельфи - это тоже реализовано тем что внутри промежутка можно использовать свои правила и промежутки. Вложенность не лимитирована.


Всем кому интересно, я создал форум для обсуждения компонента, правда сообщения писать только на английском, там уже идёт дисскуссия с авторами проекта SynEdit:

http://www.delphist.com/forum/

Автор Vit

Автор: FRAGNATIC 6.11.2004, 21:21
Биг сенкс)))

Автор: FRAGNATIC 7.11.2004, 14:38
А под Д7 есть unihighlighter есть!
и вообще как синэдит этот установить! баги всякие выскакивают сначала к пакеджу не может рес файл найти это фигня потом уже
[Error] SynEdit_D7.dpk(36): Packages 'SynEdit_D7_PE' and 'SynEdit_R7' both contain unit 'SynAutoCorrectEditor'
ещё там пару ошибок)))

Автор: Vit 7.11.2004, 15:44
SynEdit вроде устанавливается без проблем, вы его откуда скачивали?

Автор: FRAGNATIC 7.11.2004, 16:04
Всё справился с помощью Vitalik'a огромное ему спасибо!
было пару багов!
теперь всё прекрасо работает)

Автор: Vit 7.11.2004, 16:33
smile

Автор: Vitalik 11.11.2004, 10:04
Совсем недавно открылся форум по этому компоненту, так что заходите!
http://forum.vingrad.ru/index.php?showforum=170

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)