Вниз
Скачать: CL | DM;

Событие, когда в буфере есть текст   Найти похожие ветки 

← →
Дмитрий_177   (2006-02-06 19:11) [0]

Вопрос может бытьбанальным, но всеже я не знаю как его решить. В MainMenu в подменю "Edit" как у всех блокнотов есть пункт "Paste". Так вот как мне отлавливать когда его делать доступным(Enabled:=true) когда в буфере есть текст и когда нету текста недоступным(Enabled:=false)?


← →
begin...end ©   (2006-02-06 19:36) [1]

Если нужно в определённый момент проверять, есть ли данные нужного формата в буфере, используйте IsClipboardFormatAvailable. Если же нужно именно отлавливать изменение содержимого буфера, используйте SetClipboardViewer + WM_DRAWCLIPBOARD. Описание всего этого см. в MSDN.


← →
Дмитрий_177   (2006-02-06 20:29) [2]

Спасибо, буду разбираться... А еще вопросик, немного не в тему но из той же оперы... Как отлавливать событие на то что текст был выделен и не выделен в Memo? это чтобы "Cut" и "Copy" чтобы тоже делать доступным и недоступным... И если можно про Undo с Redo также...


← →
begin...end ©   (2006-02-06 20:51) [3]

> Дмитрий_177   (06.02.06 20:29) [2]

> Как отлавливать событие на то что текст был выделен и не
> выделен в Memo?

Насчёт Memo -- не в курсе. А вот у RichEdit с этим просто: он не скупится на информирование родительского окна и посылает ему уведомление EN_SELCHANGE. В Delphi при этом вызывается обработчик TRichEdit.OnSelectionChange.


← →
Babay ©   (2006-02-07 07:58) [4]

в МЕМО есть свойство SelLength в котором содержится кол-во выделенных символов, если SelLength=0 значит выделения нет.
Проверяй и поступай соответственно.

P/S еще есть SelText содержит выделенный текст


← →
ЮЮ ©   (2006-02-07 08:21) [5]

А ещё TActionList, у которого есть стандартные Action-ы. Достаточно будет у TMenuItem указать их в качестве Action - и все будет работать безо всяких усилий с твоей стороны


← →
Gero ©   (2006-02-07 12:13) [6]

> Как отлавливать событие на то что текст был выделен и не
> выделен в Memo? это чтобы "Cut" и "Copy" чтобы тоже делать
> доступным и недоступным... И если можно про Undo с Redo
> также...

Используй TActionList.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
5-1126694158
Juice
2005-09-14 14:35
2006.03.12
Вложенный компонент


15-1140292334
ArtemESC
2006-02-18 22:52
2006.03.12
Hello world в ассме


2-1140641003
TimScorp
2006-02-22 23:43
2006.03.12
ListBox


1-1139242281
Дмитрий_177
2006-02-06 19:11
2006.03.12
Событие, когда в буфере есть текст


15-1140432721
kaZaNoVa
2006-02-20 13:52
2006.03.12
Алгоритм ограничения числа запусков программы/времени работы




   Наверх