Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #31  
Старый 24.06.2013, 14:15
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Вот не надо ля-ля если не знаешь, в дельфи не так, в дельфи графически все рисуется. А автоматы еще никто не отменял.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #32  
Старый 24.06.2013, 14:35
Аватар для AlexandrV
AlexandrV AlexandrV вне форума
Начинающий
 
Регистрация: 10.02.2013
Сообщения: 197
Версия Delphi: XE3
Репутация: -624
По умолчанию

неужели в делфи каждый символ програмная отрисовка. Мне нужна все волишь красить текст в риче гдето видел редактор а вот он нашел. чтото на подобие этого

http://www.moddb.com/games/knights-a...-script-editor
Ответить с цитированием
  #33  
Старый 24.06.2013, 14:58
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Цитата:
Сообщение от AlexandrV
вопрос как просчитать от курсора до пробела
EM_FINDWORDBREAK используй:
Цитата:
The EM_FINDWORDBREAK message finds the next word break before or after the specified character position, or retrieves information about the character at that position.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #34  
Старый 24.06.2013, 15:01
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Посмотри как в SynEdit выводится.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #35  
Старый 24.06.2013, 15:05
Аватар для AlexandrV
AlexandrV AlexandrV вне форума
Начинающий
 
Регистрация: 10.02.2013
Сообщения: 197
Версия Delphi: XE3
Репутация: -624
По умолчанию

говорю нет компонента не устанавливается на XE3
Ответить с цитированием
  #36  
Старый 24.06.2013, 15:51
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Цитата:
Сообщение от AlexandrV
говорю нет компонента...
Смотрите это, даже для ХЕ4 уже есть...
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
AlexandrV (24.06.2013)
  #37  
Старый 24.06.2013, 16:32
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Цитата:
Сообщение от AlexandrV
говорю нет компонента не устанавливается на XE3
...ь, блокнотом пасники не открываются чтоли?
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #38  
Старый 24.06.2013, 17:53
Аватар для AlexandrV
AlexandrV AlexandrV вне форума
Начинающий
 
Регистрация: 10.02.2013
Сообщения: 197
Версия Delphi: XE3
Репутация: -624
По умолчанию

Цитата:
Сообщение от Alegun
Смотрите это, даже для ХЕ4 уже есть...
Огромно спасибо тебе. Еще раз огромное спасибо. Не представляешь как выручил.

А как стиль SynEdit применить на рич просто у SynEditа неудобный memo. он как у делфи а мне нужен как у текстового редактора

Установиться установилась но если положить компонент на форму то вот ошибки
Код:
[dcc32 Error] SynUnicode.pas(1679): E2010 Incompatible types: 'AnsiChar' and 'Char'
[dcc32 Error] SynUnicode.pas(1686): E2010 Incompatible types: 'AnsiChar' and 'Char'
[dcc32 Error] SynUnicode.pas(1687): E2010 Incompatible types: 'AnsiChar' and 'Char'
[dcc32 Error] SynUnicode.pas(1688): E2010 Incompatible types: 'AnsiChar' and 'Char'
[dcc32 Error] SynUnicode.pas(1695): E2010 Incompatible types: 'AnsiChar' and 'Char'
[dcc32 Error] SynUnicode.pas(1696): E2010 Incompatible types: 'AnsiChar' and 'Char'

вот код реализованной покраски для слова Begin
Код:
procedure TForm1.RichEdit1KeyPress(Sender: TObject; var Key: Char);
var stroca:integer;
begin
  case key of
    #32:begin
      if Form1.RichEdit1.Text[Length(Form1.RichEdit1.Text)]=#32 then exit else begin
        stroca:=Length(Form1.RichEdit1.Text);
        repeat
          stroca:=stroca-1;
        until (Form1.RichEdit1.Text[stroca]=#32) or (stroca=0);
        Form1.RichEdit1.SelStart:=stroca;
        Form1.RichEdit1.SelLength:=Length(Form1.RichEdit1.Text);
        if AnsiUpperCase(Form1.RichEdit1.SelText) = 'BEGIN' then
          Form1.RichEdit1.SelAttributes.Color:=ClBlue
        else Form1.RichEdit1.SelAttributes.Color:=ClBlack;
        Form1.RichEdit1.SelStart:=Length(Form1.RichEdit1.Text);
      end;
    end;
  end;
end;

багов пока не нашел. Собственно осталось встроить поддержку коминтариев и все

Извините. Сообщения просьба удалить.

Последний раз редактировалось M.A.D.M.A.N., 26.06.2013 в 07:19.
Ответить с цитированием
  #39  
Старый 26.06.2013, 12:27
Аватар для AlexandrV
AlexandrV AlexandrV вне форума
Начинающий
 
Регистрация: 10.02.2013
Сообщения: 197
Версия Delphi: XE3
Репутация: -624
По умолчанию

Почему этот код

Код:
procedure TForm2.RED1KeyPress(Sender: TObject; var Key: Char);
var stroca:integer;
  i:Integer;
begin
  case key of
    #32:begin
      if Form2.RED1.Text[Length(Form2.RED1.Text)]=#32 then System.exit else begin
        stroca:=Length(Form2.RED1.Text);
        repeat
          stroca:=stroca-1;
        until (Form2.RED1.Text[stroca]=#32) or (stroca=0);
        Form2.RED1.SelStart:=stroca;
        Form2.RED1.SelLength:=Length(Form2.RED1.Text);
        for i := 0 to Length(ColorText) do begin
          if AnsiUpperCase(Form2.RED1.SelText) = ColorText[i].ColText then begin
            Form2.RED1.SelAttributes.Color:=ColorText[i].ColColor;
            Form2.RED1.SelAttributes.Style:=ColorText[i].ColFontStyle;
          end
          else begin
            Form2.RED1.SelAttributes.Color:=Form2.FontDialog1.Font.Color;
            Form2.RED1.SelAttributes.Style:=Form2.FontDialog1.Font.Style;
          end;
          Form2.RED1.SelStart:=Length(Form2.RED1.Text);
        end;
      end;
    end;
  end;
end;

ColorText[0].ColText:=AnsiUpperCase(PRK1);
  ColorText[0].ColColor:=ClBlue;
  ColorText[0].ColFontStyle:=[fsbold];
  ColorText[1].ColText:=':';
  ColorText[1].ColColor:=clGreen;
  ColorText[1].ColFontStyle:=[fsBold];
  ColorText[2].ColText:='|';
  ColorText[2].ColColor:=ClRed;
  ColorText[2].ColFontStyle:=[fsBold];

ColorText:Array[0..2] of TColorText;

Type TColorText=record
  ColText:String;
  ColColor:TColor;
  ColFontStyle:TFontStyles;
end;

красит только 1 слово Begin
Ответить с цитированием
  #40  
Старый 26.06.2013, 15:02
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Молодой человек, вы козерог?
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #41  
Старый 26.06.2013, 15:47
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
Радость

Цитата:
Сообщение от AlexandrV
Почему этот код красит только 1 слово Begin
вот тут Заставка "CodeShow" красятся все зарезервированные слова. тоже использую Rich Edit Control
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #42  
Старый 26.06.2013, 16:37
Аватар для AlexandrV
AlexandrV AlexandrV вне форума
Начинающий
 
Регистрация: 10.02.2013
Сообщения: 197
Версия Delphi: XE3
Репутация: -624
По умолчанию

Я хочу этот код доработать а не писать другой. Способ при том здесь гораздо проще
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:48.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter