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

Вниз

Цвета в RichEdit   Найти похожие ветки 

 
Brut   (2004-01-26 15:52) [0]

Есть некая процедура:

procedure TForm1.ColorMsg(Msg : String; Color: TColor; MsgEdit : TRichEdit);
begin
if (msg="") or (msg=" ") then exit;
if not GlobalPrefs.ColoredMessages then Color := clBlack;
MsgEdit.SelAttributes.Color := Color;
MsgEdit.SelStart := Length(MsgEdit.Text);
MsgEdit.SelLength := Length(MsgEdit.Lines[MsgEdit.Lines.Count])+1;
MsgEdit.Lines.Add(Msg);
MsgEdit.HideSelection := true;
MsgEdit.SelLength := 0;

end;

Она добавляет Msg:String в MsgEdit:TRichEdit цвета Color:TColor. Но иногда почему то цвета глючат. То есть при одном и том же тексте иногда выделяются разные участки текста. Обьясните чайнику, в чем тут дело.


 
MBo ©   (2004-01-26 16:11) [1]

>MsgEdit.SelLength := Length(MsgEdit.Lines[MsgEdit.Lines.Count])+1;
Это настораживает...


 
Agent13 ©   (2004-01-26 16:12) [2]


> MBo © (26.01.04 16:11) [1]

Да и нетолько это, как-то всё вообще наоборот делается.


 
Kotka ©   (2004-01-26 16:13) [3]

Глючат не цвета, а РичЕдит. Сам когда-то с ним воевал.
Единственный выход - сначала добавлять текст, а потом раскрашивать. Или использовать другой компонент.


 
Kotka ©   (2004-01-26 16:18) [4]

>Agent13 © (26.01.04 16:12) [2]
Упс, проглядел!Пожалуй ты прав!


 
Brut   (2004-01-27 06:45) [5]

Может тогда подскаже кто, как сделать процедуру наподобие моей, т.е. которая добавляет в richedit строку и выделяет её цветом? А то я сам работать с ричедитом не умею/боюсь/не могу


 
ЮЮ ©   (2004-01-27 08:14) [6]

procedure TForm1.Button1Click(Sender: TObject);
begin
RichEdit1.SelStart := Length(RichEdit1.Lines.Text);
RichEdit1.SelAttributes.Color := clRed;
RichEdit1.SelText := "Вставляем в конец красную строку";
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
RichEdit1.Lines.Add("");
RichEdit1.SelAttributes.Color := clGreen;
RichEdit1.SelText := "Вставляем в конец с новой строки зеленую строку";
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
1-16380
Gitr
2004-01-28 13:01
2004.02.06
Как сделать на заставке смену картинок?


14-16644
}|{yk
2004-01-13 13:02
2004.02.06
Смотрите, как нужно работать!


1-16251
Maxim2030
2004-01-26 15:29
2004.02.06
как преобразовать .tlb -> .pas через командную строку


1-16265
Taras
2004-01-24 20:25
2004.02.06
Приложение в стиле Win XP


14-16617
Думкин
2004-01-15 06:14
2004.02.06
С днем рождения! 15 января.