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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2011, 22:14   #1
KiL0z
Пользователь
 
Регистрация: 17.05.2010
Сообщений: 35
Вопрос Определение того что текст в SynEdit изменился?

Здравствуйте!

Подскажите, как определить, что текст в SynEdit изменился, т.е. было сделано редактирование (например, удален/добавлен символ, что-то вырезано/вставлено в/из буфера обмена)?

Ну, или хотя бы скажите, как это делается в Memo или RichEdit... дальше додумаю...
KiL0z вне форума Ответить с цитированием
Старый 08.06.2011, 22:52   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

OnChange
Modifed
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 08.06.2011, 23:25   #3
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

Я сделал так: при загрузке запоминаю контрольную сумму текста, в обработчике OnChange сверяю весь текст с контрольной суммой, при несовпадении доступна Action записи
ReportCube вне форума Ответить с цитированием
Старый 18.06.2011, 13:21   #4
KiL0z
Пользователь
 
Регистрация: 17.05.2010
Сообщений: 35
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
OnChange
Modifed
Спасибо, с изменением текста в редакторе что-то наклёвывается, думаю после небольших шаманских плясок дело пойдет. Думаю, придется сделать свой компонент на основе стандартного.

Вопрос с буфером обмена остается открытый...


Цитата:
Сообщение от ReportCube Посмотреть сообщение
Я сделал так: при загрузке запоминаю контрольную сумму текста, в обработчике OnChange сверяю весь текст с контрольной суммой, при несовпадении доступна Action записи
Интересный подход. Вопрос в том нет ли сильных тормозов при большом объеме текста если при каждом OnChange вычисляется контрольная сумма?
Хотя, если при загрузке вычислять хеш для отдельных строк (или групп строк) и держать его в списке, а потом проверять, скажем, хеш в текущей строке (и, возможно, в следующей и/или предыдущей) [группе], то, наверное, можно порядочно уменьшить нагрузку. Правда, за счет прироста используемой памяти, но думаю это сейчас уже не так существенно, тем более что прирост, при использовании того же MD5 будет не существенный, особенно если все таки делать хеш для групп строк.
Да, пожалуй идея интересная, и её стоит развить. Спасибо)))
KiL0z вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Правильное уничтожение того, что создал Alex Cones Общие вопросы Delphi 13 06.11.2010 16:43
как реализовать функцию для того что бы скопировать элементы одного массива во второй в обратном порядке mansp Общие вопросы C/C++ 8 28.10.2010 15:48
форум изменился.. crazy horse Свободное общение 68 04.09.2009 13:18
Не хватает памяти.Из-за того, что Паскаль старый? delphyok Паскаль, Turbo Pascal, PascalABC.NET 4 17.05.2009 15:49
switch или что-нибудь типа того ДядяМиша PHP 3 30.04.2009 08:17