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

Вниз

Приветствую Мастеров! Всё таже раскраска строк в РичЕдит!   Найти похожие ветки 

 
IronHawk ©   (2002-11-26 02:09) [0]

На форме есть: РичЕдит, Буттон, Едит, ОпенДиалог (и всё к примеру).
Всё таже трабла, вставляю текст из файла с помощью ОпенДиалога по событию БуттонТыц, в едит мне надо ввести символ с которых начинаются некоторые строки, на событие ОнЧендж Едита, немогу повесить перерисовку цвета тех строк коротые начинаются с символа введенного в Едит на красный цвет, а все остальные строки перекрасить в тёмно-синий.

Напомните ПЛЗ.
заранее благодарен!


 
Almaz ©   (2002-11-26 02:33) [1]

Что-то вроде. Оптимизируй сам. :))

procedure TForm1.Edit1Change(Sender: TObject);
var
I: Integer;
Ch: Char;
Start, L: Integer;
begin
if Length(Edit1.Text) = 0 then Ch := #0
else Ch := Edit1.Text[1];
Start := 0;
for I := 0 to RichEdit1.Lines.Count - 1 do
begin
L := Length(RichEdit1.Lines[I]);
if L > 0 then
begin
RichEdit1.SelStart := Start;
RichEdit1.SelLength := L;
Inc(Start, L + 2); // +2 - это перевод строки :)
if RichEdit1.Lines[I][1] = Ch then
RichEdit1.SelAttributes.Color := clRed else
RichEdit1.SelAttributes.Color := clBlue;
end;
end;
end;


Удачи.


 
IronHawk ©   (2002-11-26 02:39) [2]


>Almaz
Спасибо!

А у кого ещё какие вариантики есть?


 
Song ©   (2002-11-26 08:26) [3]

EM_SETCHARFORMAT


 
Дмитрий К.К. ©   (2002-11-26 08:35) [4]

ИМХО, когда начинаются задачи синтаксического раскраски и прочего подобного, нужно юзать не РичЭдит.


 
IronHawk ©   (2002-11-28 03:02) [5]


> Song © (26.11.02 08:26)
> EM_SETCHARFORMAT

ДЛя всех символов, а цикл не много ли ресурсов сьест?

> Дмитрий К.К. © (26.11.02 08:35)
> ИМХО, когда начинаются задачи синтаксического раскраски
> и прочего подобного, нужно юзать не РичЭдит.

А что? Мемо? Или ВебБроузер?


 
Дмитрий К.К. ©   (2002-11-28 06:31) [6]

Альтернатив - море (Dream Memo, Syn Edit и проч.)


 
Song ©   (2002-11-28 07:32) [7]

>>ДЛя всех символов, а цикл не много ли ресурсов сьест?
Не знаю, не пробовал. Ты же спрашивал альтернативы, я тебе их и привожу :)


 
IronHawk ©   (2002-11-29 00:49) [8]


> Дмитрий К.К. © (28.11.02 06:31)
> Альтернатив - море (Dream Memo, Syn Edit и проч.)

А можно вообще не мучатся, есть компоненты сторонних производителей, но это ж не интересно!

> Song © (28.11.02 07:32)

Спасибо, что уточнил!


 
Дмитрий К.К. ©   (2002-11-29 06:39) [9]


> IronHawk © (29.11.02 00:49)
> А можно вообще не мучатся, есть компоненты сторонних производителей, но это ж не интересно!


Во-первых, это и есть компоненты от сторонних производителей, а во-вторых, SynEdit бесплатен и поставляется с исходниками. Если в них покопаться, можно извлечь немало полезного.


 
IronHawk ©   (2002-11-29 23:48) [10]


> Дмитрий К.К. © (29.11.02 06:39)
> и поставляется с исходниками. Если в них покопаться, можно
> извлечь немало полезного.

Полезное можно достать откуда хочешь, если покопатся...


 
Fantasist ©   (2002-11-30 02:23) [11]


> IronHawk © (29.11.02 23:48)


Правильно говорят - используй SynEdit. А типа того, что мы дескать сами крутые - все сами сделаем, то лучше вы не сделаете. А если и сделаете то далеко не сейчас.


 
Дмитрий К.К. ©   (2002-11-30 08:41) [12]


> IronHawk ©


Ты противоречишь сам себе. Разберись с собой ;)


 
IronHawk ©   (2002-12-01 15:49) [13]


> Fantasist © (30.11.02 02:23)
> используй SynEdit.

А де его взчть-то?

> Дмитрий К.К. © (30.11.02 08:41)

Нифига! :-)


 
Fantasist ©   (2002-12-02 00:14) [14]


> > используй SynEdit.
>
> А де его взчть-то?


http://SynEdit.SourceForge.net


 
IronHawk ©   (2002-12-02 00:26) [15]


> Fantasist © (02.12.02 00:14)

Спасибо!



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

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

Наверх




Память: 0.5 MB
Время: 0.02 c
1-36181
antoniz
2002-12-04 09:28
2002.12.12
Подскажите по переиндексации в Paradox.


3-36013
Youri
2002-11-22 15:54
2002.12.12
XSQLDA index out of range!


1-36106
Lord
2002-12-03 09:46
2002.12.12
Неполучается.


1-36266
kex86
2002-12-02 14:34
2002.12.12
OutLook


3-36072
VaZ
2002-11-26 09:58
2002.12.12
Нужна помощь! Экспорт в dbf из Interbase