Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2008, 16:46   #11
xReactions
Заблокирован
 
Регистрация: 02.05.2008
Сообщений: 10
По умолчанию

Дмитрий вы не горячитесь но у меня не получается...
xReactions вне форума Ответить с цитированием
Старый 05.05.2008, 16:58   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Когда-то наспех делал такую чтуку ради интереса )
Вот посмотри, может пригодится.
Там пара багов правда.
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls;

type
  TForm1 = class(TForm)
    RichEdit1: TRichEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var i:integer;s:string;  cl:TColor;
begin
s:='if';
for i:=0 to length(RichEdit1.Lines.Text) do begin
 if copy(RichEdit1.Lines.Text,i,length(s))=s then begin
  //********** WITH **********
  with RichEdit1 do  begin
    SelStart:=i-1;
    SelLength:=length(s);
    SelAttributes.Color:=clred;
  end;
  //********** END WITH ****** {}
 end;
end;
end;

end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.05.2008, 17:04   #13
xReactions
Заблокирован
 
Регистрация: 02.05.2008
Сообщений: 10
По умолчанию

молодец !!!! только тот-же баг
xReactions вне форума Ответить с цитированием
Старый 05.05.2008, 19:44   #14
StartMis
Форумчанин
 
Регистрация: 21.04.2008
Сообщений: 175
По умолчанию

xReactions ваш исходник имеет только один недостаток Application.ProcessMessages;Безнего работает отлично а от тормозов избавиться ни как нельзя. Если конечно сделать проверку только в той строке в каторой курсор тогда можно избавиться.

Последний раз редактировалось StartMis; 05.05.2008 в 20:48.
StartMis вне форума Ответить с цитированием
Старый 31.05.2009, 00:48   #15
Ruslan11
Новичок
Джуниор
 
Регистрация: 31.05.2009
Сообщений: 1
По умолчанию

Код:
Var
Start, Fin, Pos, Len:Integer;
begin
Start:=0;
Fin:=Length(Richedit1.text);
Len:=Length('if');
Pos:=RichEdit1.FindText('if', Start, Fin, []);
while Pos<>-1 do
    begin
        RichEdit1.SetFocus;
        RichEdit1.SelStart:=Pos;
        RichEdit1.SelLength:=Len;
        RichEdit1.SelAttributes.Color:=ClRed;
        RichEdit1.SelAttributes.Style:=[fsBold];
        Start:=Pos;
        Fin:=Fin-Start;
        Pos:=RichEdit1.FindText('if', Start, Fin, []);
        application.ProcessMessages;
    end;
Ruslan11 вне форума Ответить с цитированием
Старый 31.05.2009, 01:29   #16
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

xReactions, попробуй компонент SynEdit, SynMemo соответсвенно. Помимо подсветки накидали много чего интерестного
Хотя, в плане опыта рекомендовал бы писать с null'я.
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг
Dj_smart вне форума Ответить с цитированием
Старый 01.06.2009, 09:30   #17
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
только тот-же баг
Чет я там багов не увидел... Работает нормально.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.06.2009, 09:38   #18
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

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

Сам же пробовал аналогично в RichEdit - но во-первых он медленный, а во-вторых жутко глючный и на разных компах ведет себя по разному.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Memo WOLFak Компоненты Delphi 11 03.06.2008 10:58
Помогите организовать добавление в memo или listbox... Arkuz Компоненты Delphi 6 25.04.2008 18:16
Memo Kocapb Общие вопросы C/C++ 2 17.01.2008 02:06
В Memo сделать так, чтобы текст был разного цвета, разноцветный memo Artem Компоненты Delphi 3 07.09.2007 13:40
Memo elagin Компоненты Delphi 8 27.05.2007 22:18