ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
Не однократная отмена действий [Delphi] |

08.02.2010, 21:43
|
|
Познающий
Регистрация: 07.11.2009
Сообщений: 36
Провел на форуме: 77411
Репутация:
0
|
|
Не однократная отмена действий [Delphi]
Народ подскажите, как реализовать кнопку "назад" для TRichEdit, но так, что бы она отменяла допустим, на 5 шагов назад, а не на 1 ??
|
|
|

08.02.2010, 22:25
|
|
Познающий
Регистрация: 25.10.2009
Сообщений: 97
Провел на форуме: 604635
Репутация:
15
|
|
Сам реализовывай
|
|
|

08.02.2010, 22:35
|
|
Познающий
Регистрация: 07.11.2009
Сообщений: 36
Провел на форуме: 77411
Репутация:
0
|
|
Jingo Bo
не можешь не чего путного сказать, промолчал бы уже, умнее показался
|
|
|

08.02.2010, 22:47
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
Собственно говоря Jingo Bo прав. тут тока самому делать.
Вся фишка что отмена - это обычная виндовая фишка.
Верне сообщение WM_UNDO по этому больше 1 не сможешь сделать.
По этому самому нужно будет это делать.
А делается это примерно так:
1) отрабатываешь изменение текса в richedit
2) сравниваешь что изменилось и запоминай это в TStringList к примеру.
Запоминать примерно так: Кол-во букв, добавлено или удалено, с какой позиции и что за буквы.
3) обрабатывай изменения и попутно анализируй последюю запись логов. Если это одно место то просто правь предыдущую запись лога.
4) когда нужно отменить чтото, то просто забирай записи из лога и восстанавливай по ним данные
|
|
|

09.02.2010, 14:56
|
|
Познающий
Регистрация: 25.10.2009
Сообщений: 97
Провел на форуме: 604635
Репутация:
15
|
|
не можешь не чего путного сказать, промолчал бы уже, умнее показался
Я тебе сказал как сделать, а slesh разжевал
|
|
|

09.02.2010, 20:00
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме: 3008839
Репутация:
1502
|
|
если текста немного, можешь весь сохранять
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

09.02.2010, 23:13
|
|
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме: 6490435
Репутация:
2290
|
|
Jingo Bo
не можешь не чего путного сказать, промолчал бы уже, умнее показался
Хамишь.
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|