Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.03.18;
Скачать: [xml.tar.bz2];

Вниз

Как правильно добавлять разноцветные строки в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.043 c
3-1164308532
serko
2006-11-23 22:02
2007.03.18
Одновременная работа с базой...


2-1172121094
Novichok_New
2007-02-22 08:11
2007.03.18
ListView + CheckBox


15-1171957234
Unknown user
2007-02-20 10:40
2007.03.18
Кто работал с OpenCV в Delphi?


2-1172222511
Steep
2007-02-23 12:21
2007.03.18
Время


15-1172042600
Чародей
2007-02-21 10:23
2007.03.18
Кофемашина Brio 250





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский