| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как в memo осуществить повтор. |
| Автор: Alex103 18.3.2005, 08:09 |
| У меня такая проблемма мне нужно повторить действие в memo ато отмену можно просто сделать а повтор не знаю как посоветуйте. с ув. Александр |
| Автор: RA 18.3.2005, 08:35 |
| Undo/Redo чтоли ? Undo это ондаступетнчатая отмена действия, следовательно один раз Undo - это отмена. второй раз Undo - это отмена отмены. |
| Автор: Alex103 20.3.2005, 02:55 | ||
Именно Undo то лего осуществить но вот Redo как не знаю. Ну вот смотри у меня есть две кнопки одна отмена другая повтор как сделать так что-бы повтор работала. Но это все не то что надо. Реально ли сделать так что-бы можео отменять было много действий!!!! |
| Автор: Vit 20.3.2005, 04:25 |
| em_redo ему послать, если не ошибаюсь... |
| Автор: Alex103 20.3.2005, 04:30 | ||
в смысле так sendmessage(em_redo); Я просто не знаю как эти сообщения посылать обьясни плиз. |
| Автор: Girder 20.3.2005, 04:58 | ||
Redo:
|
| Автор: Alex103 20.3.2005, 05:10 | ||||
К примеру мне нужно сделать 10 возвратов но как это все осуществить на одну кнопку но так что-ббы при нажатии на кнопку повтор эти повторы повторялись!!! |
| Автор: fess 20.3.2005, 12:41 |
| Если тебе не обязательно использовать стандартные компоненты, то посмотри вот этот компонент: TAdvMemo с сайта http://tmssoftware.com/. Там реализованны эти и многие другие функции. |
| Автор: Alex103 22.3.2005, 02:18 | ||
Он то у меня есть но только он по-моему триальный если я не ошибаюсь! |
| Автор: mvdr 22.3.2005, 06:25 |
| как вариант: в Мемо сохранять все-все-все про форму на этот момент, а потом при нажатии на кнопку "отмена" построчно считывать из Мемо. В этом случае надо сохранять Мемо при перезаписи его в файлы на диске. |
| Автор: fess 22.3.2005, 12:28 | ||||
Он не триальный, он shareware, т.е если ты хочешь использовать приложение в коммерческих целях или получить исходник, то ты обязан купить этот компонент. Вот лицензионное соглашение:
|
| Автор: <Spawn> 22.3.2005, 17:15 | ||
Можно попробовать организовать стек(см TStack в Contnrs). В которого класть информацию об изменениях в TMemo. Навскидку она будет примерно такая:
Только в данном случае прийдется держать копию текста Memo для сравнения с ним и создания инфы для каждого экземпляра структуры TRedoInfo, что не есть хорошо, особенно если текст большой. Возможно, что есть какое то сообщение, которое можно было бы поймать и которое само сообщало бы об этих изменениях - это был бы оптимальный вариант |
| Автор: Alex103 23.3.2005, 02:16 | ||||||
Тоесть в своем приложении не льзя использовать его только в том случае если приложение будет продаваться. А если нет то используй сколько хочушь. Вроде я так понял!!!!! |