Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: CL | DM;

Вниз

TRichEdit , склейка разноцветных строк.   Найти похожие ветки 

 
Iraizor ©   (2004-05-06 11:55) [0]

Мастера, вроде задачка простая , да чего-то никак ее решить не могу. Вобщем есть две строки s,s1 , есть TRichEdit.
Нужно в одной строке RichEdit"a склеить s и s1 ,но s должна быть красная , а s1 - синия.
Всем Заранее спасибо


 
KilkennyCat ©   (2004-05-06 12:37) [1]

Решение есть простое, но некрасивое:
создаем еще один рич.
В него вставляем слепленную строку.
выделяем нужные сегменты, меняем атрибуты (цвет).
Копируем результат в буфер, вставляем в нужный рич.
Это так, что пришло в голову... Сам себе ставлю LMD


 
clickmaker ©   (2004-05-06 12:46) [2]

RE.Lines.Add(s + s1);
RE.SelStart := 0;
RE.SelLength := Length(s);
RE.SelAttributes.Color := clRed;
RE.SelStart := Length(s);
RE.SelLength := Length(s1);
RE.SelAttributes.Color := clBlue;


 
KilkennyCat ©   (2004-05-06 19:58) [3]

2 clickmaker

это если использовать мой вариант...
а если строка вставляется в основной рич, придется определять SelStart... перед этим запоминать предыдущий, чтоб пользователю не мешать...

P.S.
последняя строка:
RE.SelLength := 0;  // Удобней в дальнейшем...


 
Iraizor ©   (2004-05-07 10:42) [4]

clickmaker
немного не подходит , тк RichEdit- окно чата , а склейка разноцветных строк нужна только когда приходит редкий тип сообщений.Запоминать позицию не подходит , покрайней мере у меня не работало ,я задавал вместо 0 другие значения ,результат был
другой , но неверный , я например задавал Selstart =30 на 1 больше длины 1ой строки , по идее же он должен был начать выделение 2ой строки ? ан нет не заработало , вышло что он выделил кусок 1ой и кусок 2ой.

KilkennyCat
к сожалению добавить второй RichEdit не могу(да и не очень хочу) , даже invisible



Страницы: 1 вся ветка

Текущий архив: 2004.05.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
1-1083871797
Студент_
2004-05-06 23:29
2004.05.23
Свой Object Inspector


8-1078393469
Lub
2004-03-04 12:44
2004.05.23
OpenGL


14-1083753802
}|{yk
2004-05-05 14:43
2004.05.23
Интернет и коммунизм


14-1083326823
Тимохов
2004-04-30 16:07
2004.05.23
Советы Рихтера не пользоватся ExitThread.


3-1083054858
Mim1
2004-04-27 12:34
2004.05.23
IBX использование двоеточия в запросе.