Главная страница
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.47 MB
Время: 0.022 c
14-16728
Piter
2004-01-15 15:41
2004.02.06
Перегрузка операторов и Шаблоны


1-16494
Dmitriy
2004-01-27 14:52
2004.02.06
Ввод числа.


3-16172
Александр Бакулин
2004-01-13 17:22
2004.02.06
Построение текстовых отчетов


8-16520
smike
2003-09-30 11:30
2004.02.06
В чём различия при запуске EXE и SCR?


1-16456
Галинка
2004-01-28 06:43
2004.02.06
О типах данных в Delphi