Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.07.2011, 14:18   #1
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию Оформление отдельных участков текста RichEdit, каким-либо цветом

Доброго времени суток!

Собственно пишу небольшое ПО, где нужно реализовать подсветку некоторых участров текста в RichEdit.
Например: текст "[+]" должен быть зелёным, а текст "[-]" - красным.


Вообще стандатный RichEdit это может?

Решение хотелось бы именно стандартными способами.
Человек_Борща вне форума Ответить с цитированием
Старый 14.07.2011, 14:46   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Стандартно не может. Парсить текст и ручками менять цвет
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.07.2011, 14:53   #3
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

вот это я имел ввиду. можно подробнее? Везде находил код которые меняет цвет строки но не участка текста.

Допустим пример:
<g>Green text</g> - это зелёный текст
<r>Red text</r> - это красный цвет
<b>Blue text</b> - это синий цвет

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

Как покрасить это текст?

При том что текст грузится из простого txt а после обработки, должен стать "покрашенным".
Человек_Борща вне форума Ответить с цитированием
Старый 14.07.2011, 15:01   #4
Leo08
Delphi master
Пользователь
 
Аватар для Leo08
 
Регистрация: 28.05.2011
Сообщений: 96
По умолчанию

Ну сначала выделяете нужный Вам текст, а затем через свойство.
RichEdit1.SelAttributes.Color
устанавливаете цвет.
БЯЯЯГГАААААА
Leo08 вне форума Ответить с цитированием
Старый 14.07.2011, 15:01   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

RichEdit.SelStart - начало, откуда выделить
RichEdit.SelLength - длина выд.участка с учетом #10 и #13
RichEdit.SelAtribytes - изменение атриб.выд.участка, в т.ч. и цвет
основная сложность - вычислить RichEdit.SelStart.
Парсим тест, подкидуем его в RichEdit.Text (не забывать #10 и #13). Нашли управл.символ - запомнить Length(RichEdit.Text) и потом использовать как SelStart. Как то в этом напрвлении

ADD - RichEdit понимает rtf. Если данные подготовлены в этом формате, то ничего парсить не нужно
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 14.07.2011 в 15:06.
Аватар вне форума Ответить с цитированием
Старый 14.07.2011, 15:04   #6
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

спасибо, направление ваших мыслей понятно. Пойду пробовать писать свой простенький HTML-редактор с подсветкой
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка в RichEdit текста из файла, и получение его из RichEdit Byurrer Общие вопросы C/C++ 1 09.04.2011 10:17
прозрачность отдельных участков формы Романнн Общие вопросы Delphi 38 30.01.2010 20:04
Как залить определённые участки формы каким-то определённым цветом? Rin Общие вопросы Delphi 5 18.11.2009 23:05
RichEdit - Выделение цветом слов fakir9999 Компоненты Delphi 3 15.06.2009 15:39
Связь ячейки с каким-либо сайтом в интернете...возможно? VOVALUAS Microsoft Office Excel 4 28.07.2008 09:47