Главная страница
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.043 c
4-16792
moreo_xayam
2003-11-27 13:47
2004.02.06
КАК ОПРЕДЕЛИТЬ HANDLE НАЗНАЧЕНИЯ СООБЩЕНИЯ ?!!!


3-16137
Ольга
2004-01-14 19:47
2004.02.06
dbgrid и заголовки к полям


4-16820
jazz
2003-11-28 11:22
2004.02.06
Как открыть ссылку в новом окне IE в дельфи?


1-16266
vl_chel
2004-01-17 15:00
2004.02.06
Список функций в DLL


1-16364
denis24
2004-01-24 11:04
2004.02.06
dbgrid.onMouseDown