![]() |
![]() ![]() ![]() ![]() |
|
Проверить, можно ли отменить последнее действие в TMemoDelphi , Компоненты и Классы , TMemo и TRichEditПроверить, можно ли отменить последнее действие в TMemo
Оформил: DeeCo
procedure TForm1.Button1Click(Sender: TObject);
begin
if Memo1.Perform(EM_CANUNDO, 0, 0) <> 0 then
ShowMessage('Undo is possible')
else
ShowMessage('Undo is not possible');
end;
Техническое описание: управление изменениями в контроле TMemo Delphi Контроль TMemo в Delphi не поддерживает операции отмены и повторения, такие как сообщение EM_ CANUNDO. Это сообщение обычно используется с-rich текстовыми редакторами, такими как TRichEdit, которые обеспечивают болееadvanced функциональность редактирования. Если вам нужно реализовать функцию отмены для вашего контроля TMemo, вы должны вручную отслеживать изменения, сделанные в содержимом мемо, и хранить их в стеке или списке. Когда пользователь хочет отменить изменение, вы должны извлечь последнее изменение из стека и восстановить предыдущее состояние мемо. Вот пример реализации этой функции:
В этом примере каждый раз, когда пользователь делает изменение в содержимом мемо, текущий текст добавляется в список Эта реализация обеспечивает основные функции отмены для вашего контроля TMemo. Вы можете улучшить ее, добавив болееadvanced функции, такие как повтор или несколько уровней отмены. В статье рассматривается возможность отмены последнего действия в TMemo при помощи метода Perform и проверяется, можно ли это сделать с помощью примера на Delphi. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: TMemo и TRichEdit ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||