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

Вниз

Как правильно добавлять разноцветные строки в RichEdit?   Найти похожие ветки 

 
lics   (2007-02-28 13:40) [0]

К примеру мне надо добавить в RichEdit строку "rgb", чтобы буквы r, g и b соответственно были clRed, clGreen и clBlue. Как это правильно сделать?


 
Elen ©   (2007-02-28 13:53) [1]


> lics   (28.02.07 13:40)

типа :
var t:Tcolor;
begin
t:=clred or clgreen;
caption:=ColorToString(GetRValue(t))+" "+ColorToString(GetGValue(t))+
ColorToString(GetBValue(t));
end;


 
Elen ©   (2007-02-28 13:55) [2]


> lics   (28.02.07 13:40)

А, в смысле каждая буква разного цвета?


 
lics   (2007-02-28 13:57) [3]

Прошу прощения, наверное не правильно сформилировал вопрос. Нужно, чтобы строка "rgb" была разноцветная (каждая буква разным цветом). Цвет роли не играет...


 
lics   (2007-02-28 14:01) [4]

Вот так все работает:
r.Lines.Add("rgb");
r.SelStart:=Length(r.text)-5;
r.SelLength:=1;
r.SelAttributes.Color:=clRed;
r.SelStart:=r.SelStart+1;
r.SelLength:=1;
r.SelAttributes.Color:=clGreen;
r.SelStart:=r.SelStart+1;
r.SelLength:=1;
r.SelAttributes.Color:=clBlue;

Но по-моему это "левое" решение.

Наверняка можно сделать как-нибудь иначе через DefAttributes...


 
Elen ©   (2007-02-28 14:13) [5]


> Но по-моему это "левое" решение.

Рабочее решение левым не бывает. ;)


 
lics   (2007-02-28 14:17) [6]

А есть какая-нибудь альтернатива? Что-нибудь наподобии:
r.SelAttributes.Color:=clRed;
r.AddText("r");
r.SelAttributes.Color:=clGreen;
r.AddText("g");
r.SelAttributes.Color:=clBlue;
r.AddText("b"+#13#10);


 
Dmitrij_K   (2007-02-28 16:09) [7]

procedure AddText(const aText: AnsiString; aColor: TColor);
var k : Integer;
begin
 k := RichEdit1.GetTextLen;
 RichEdit1.Perform(EM_SETSEL, k, k);
 RichEdit1.SelAttributes.Color := aColor;
 RichEdit1.Perform(EM_REPLACESEL, 0, Longint(PChar(aText)));
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.07 c
15-1171817926
Cyrax
2007-02-18 19:58
2007.03.18
Как выдрать мелодию из exe-ника ?


5-1149955795
Alextp
2006-06-10 20:09
2007.03.18
Мерцание при обработке Resize


8-1152215431
Verstak
2006-07-06 23:50
2007.03.18
Проблема с Direct3D приложением


1-1169462971
Kolan
2007-01-22 13:49
2007.03.18
Как полтзоваться ChartTools компонента TChart


15-1171803256
nameless
2007-02-18 15:54
2007.03.18
Firewall