Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 Как заставить работать EControl  [new]
Janex
Member

Откуда: Латвия
Сообщений: 1170
Привет всем.
Ктото работает с EControl Syntax Editor ?
У меня версия 2.6.

Записать чтот в TSyntaxMemo возможно только латынскими буквами :(
Если перключаюсь на русскую клавиатуру, то пишется ерунда всякая,
если рядом поставить простои TMemo то там пишется как
положено - в юникодах (Дельфа ХЕ), хоть в трёх языках сразу, если пототм
ctrl+c/ctrl+v из TMemo в TSyntaxMemo то всё видно как положено, а
напримую записать нефига :(
Перепробовал всё, дажё перекопилил с {$DEFINE EC_UNICODE}, нефига :(

Есть у когото опыт с токим глюком ?

WBR
Janex
29 фев 12, 16:31    [12171894]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
DimaBr
Member

Откуда:
Сообщений: 12110
function ecKeyChar(const C: Char): ecChar;
begin
  {$IFDEF EC_UNICODE}
    MultiByteToWideChar(CodePageFromLocale(GetKeyboardLayout(0) and $FFFF),
                        MB_USEGLYPHCHARS, @C, 1, @Result, 1);
  {$ELSE}
    Result := C;
  {$ENDIF}
end;

procedure TCustomSyntaxMemo.KeyPress(var Key: Char);
var WC: ecChar;
begin
  inherited;
  {$IFDEF EC_UNICODE}
  if (Key = #63) and (FUniChar <> #0) then WC := FUniChar
   else WC := ecKeyChar(Key);  //ошибка здесь
  FUniChar := #0;
29 фев 12, 18:04    [12172627]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
Janex
Привет всем.
Ктото работает с EControl Syntax Editor ?
У меня версия 2.6.


В новых версиях всё хорошо, а 2.6 - последняя доступная пиратская.
29 фев 12, 18:06    [12172639]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
Janex
Member

Откуда: Латвия
Сообщений: 1170
DimaBr
function ecKeyChar(const C: Char): ecChar;
begin
  {$IFDEF EC_UNICODE}
    MultiByteToWideChar(CodePageFromLocale(GetKeyboardLayout(0) and $FFFF),
                        MB_USEGLYPHCHARS, @C, 1, @Result, 1);
  {$ELSE}
    Result := C;
  {$ENDIF}
end;

procedure TCustomSyntaxMemo.KeyPress(var Key: Char);
var WC: ecChar;
begin
  inherited;
  {$IFDEF EC_UNICODE}
  if (Key = #63) and (FUniChar <> #0) then WC := FUniChar
   else WC := ecKeyChar(Key);  //ошибка здесь
  FUniChar := #0;


Вот бы ешё расказал что на что править ... :) :) :)

WBR
Janex
29 фев 12, 18:48    [12172862]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
Janex
Member

Откуда: Латвия
Сообщений: 1170
Разобрался :)
TNX

WBR
Janex
29 фев 12, 20:43    [12173206]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Как заставить работать EControl  [new]
WaveRunner
Member

Откуда:
Сообщений: 7
Janex,
Помогите разобраться другим. Что нужно сделать, чтобы кириллица нормально отображалась?
2 апр 21, 20:18    [22303513]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
WaveRunner
Janex,
Помогите разобраться другим. Что нужно сделать, чтобы кириллица нормально отображалась?


в третьей версии всё нормально отображается
2 апр 21, 21:17    [22303530]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
WaveRunner
Member

Откуда:
Сообщений: 7
defecator, у меня, к сожалению, версия 2.60
2 апр 21, 21:36    [22303538]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
WaveRunner
defecator, у меня, к сожалению, версия 2.60

ну, я сожалею
2 апр 21, 21:46    [22303544]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
энди
Member

Откуда: Киров, Россия
Сообщений: 1252
Оно вообще-то еще официально живое? Судя по сайту давно умерло.
2 апр 21, 22:57    [22303572]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
WaveRunner
Member

Откуда:
Сообщений: 7
defecator, может у вас есть какие-нибудь мысли по поводу этой проблемы?
3 апр 21, 13:42    [22303728]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
WaveRunner
defecator, может у вас есть какие-нибудь мысли по поводу этой проблемы?


К сообщению приложен файл. Размер - 23Kb
3 апр 21, 14:05    [22303740]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
WaveRunner
defecator, может у вас есть какие-нибудь мысли по поводу этой проблемы?


К сообщению приложен файл. Размер - 23Kb
3 апр 21, 14:07    [22303741]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
WaveRunner
Member

Откуда:
Сообщений: 7
defecator, при вводе латиницы все нормально отображается. Но как только переключаюсь на кириллицу, в редакторе выводится всякая белиберда (см. скрин). Вот что не так. В посте выше сказали, где искать ошибку, но не сказали, что конкретно нужно сделать, чтобы избавиться от этой проблемы. У самого додуматься не получается, поэтому прошу помочь

К сообщению приложен файл. Размер - 4Kb
5 апр 21, 10:23    [22304231]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
WaveRunner
defecator, при вводе латиницы все нормально отображается. Но как только переключаюсь на кириллицу, в редакторе выводится всякая белиберда (см. скрин). Вот что не так. В посте выше сказали, где искать ошибку, но не сказали, что конкретно нужно сделать, чтобы избавиться от этой проблемы. У самого додуматься не получается, поэтому прошу помочь

Картинка с другого сайта.


я не знаю, что у тебя за проблема
Я тебе привёл скриншоты от древней версии 2.35 (2007-й год) и 3.0 (2011-й год)

Везде прекрасно печатается кириллица - 2.35 на Delphi 7, версия 3.0 на Delphi XE7

Сообщение было отредактировано: 5 апр 21, 10:21
5 апр 21, 10:28    [22304232]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
WaveRunner
Member

Откуда:
Сообщений: 7
defecator, мне ваши скриншоты никак погоды не делают
5 апр 21, 11:02    [22304264]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
asutp2
Member

Откуда: Тюмень
Сообщений: 857
WaveRunner,

зачем использовать либу, которая автором уже брошена?
5 апр 21, 11:13    [22304274]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
WaveRunner
Member

Откуда:
Сообщений: 7
asutp2, затем, что понравилась. О том, что она заброшена слышу впервые
5 апр 21, 11:20    [22304282]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
asutp2
WaveRunner,

зачем использовать либу, которая автором уже брошена?


она не совсем брошена, там под 10.2 есть
значит, кто-то допиливал
5 апр 21, 11:20    [22304283]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
WaveRunner
asutp2, затем, что понравилась. О том, что она заброшена слышу впервые


а ты её купил, что ли ?
5 апр 21, 11:21    [22304285]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
WaveRunner
Member

Откуда:
Сообщений: 7
defecator
WaveRunner
asutp2, затем, что понравилась. О том, что она заброшена слышу впервые


а ты её купил, что ли ?


нет. Наверное, если бы я ее купил, то сидел бы на последней версии, и не задавал бы тут вопросов
5 апр 21, 11:23    [22304288]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
asutp2
Member

Откуда: Тюмень
Сообщений: 857
defecator
asutp2
WaveRunner,

зачем использовать либу, которая автором уже брошена?


она не совсем брошена, там под 10.2 есть
значит, кто-то допиливал
Вот именно, что только последняя версия для 10.2
А как же Rio? Sydney?
Сайт обновлялся последний раз в 2017 году.

Поэтому большой вопрос - допустим решено использовать библиотеку. Через пару лет принято решении о миграции на делфи 10.5. И?
5 апр 21, 11:43    [22304308]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
asutp2
defecator
пропущено...


она не совсем брошена, там под 10.2 есть
значит, кто-то допиливал
Вот именно, что только последняя версия для 10.2
А как же Rio? Sydney?
Сайт обновлялся последний раз в 2017 году.

Поэтому большой вопрос - допустим решено использовать библиотеку. Через пару лет принято решении о миграции на делфи 10.5. И?


Можно таскать за собой, периодически самостоятельно допиливая под новую версию дельфи.
Если последовательно перетаскивать из версии в версию, то и допиливать будет немного
Тем более, что EControl написан на классическом Дельфи, безо всяких генериков и прочих нововведений
5 апр 21, 11:51    [22304312]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
defecator
Member

Откуда:
Сообщений: 39814
WaveRunner
defecator
пропущено...


а ты её купил, что ли ?


нет. Наверное, если бы я ее купил, то сидел бы на последней версии, и не задавал бы тут вопросов


я тебе показал древнюю версию 2.35 и "новую" версию 3.00
У тебя версия 2.60

Ты можешь украсть в том же месте, где ты украл 2.60, и версию 3.00
Что решит твою проблему
5 апр 21, 11:53    [22304315]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить работать EControl  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 3885
asutp2,

думаю, что все перенесется без вопросов. недавно переносил проекты с XE6 на 10.4.2, перенеслось правкой нескольких строк кода. если либа достаточно хороша, то, думаю пусть и юзает.
5 апр 21, 11:55    [22304318]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить