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

как перехватит буфер обмена при вставки в richedit   Найти похожие ветки 

 
vidiv ©   (2006-05-23 17:56) [0]

Есть RichEdit... как перехватить и изменить этот самый RTF перед непосредственной его вставкой из буфера в контрол?


 
oldman ©   (2006-05-23 17:58) [1]

А кто мешает изменить его после вставки???
Проще и дешевле...


 
vidiv ©   (2006-05-23 18:00) [2]


> oldman ©   (23.05.06 17:58) [1]

тогда как узнать начальную и конечную позицию вставленного текста?


 
oldman ©   (2006-05-23 18:07) [3]


> vidiv ©   (23.05.06 18:00) [2]


Гы...
Перед вставкой сохранить его в скрытый Ричедит, а после вставки сравнить построчно...
Гы...


 
begin...end ©   (2006-05-23 18:17) [4]

> vidiv ©   (23.05.06 17:56)

RichEdit "вставляет в себя" содержимое буфера обмена тогда, когда в его оконную процедуру приходит сообщение WM_PASTE. Отсюда сразу видно решение -- назначить RichEdit"у новую оконную процедуру, в которой при получении WM_PASTE делать то, что требуется (открыть буфер, прочитать содержимое, сделать изменения, записать изменённое содержимое, закрыть буфер), после чего вызывать старую оконную процедуру.


 
begin...end ©   (2006-05-23 20:07) [5]

Я был не совсем прав в [4]. На WM_PASTE RichEdit, конечно, реагирует, но это сообщение в случае RichEdit"а не генерируется системой автоматически при нажатии, например, сочетаний клавиш Shift-Ins или Ctrl-V. Похоже, RichEdit самостоятельно обрабатывает эти сочетания. Это несколько усложняет задачу...



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

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



Память: 0.46 MB
Время: 0.023 c
15-1148280670
deltav1
2006-05-22 10:51
2006.06.18
GPSS


4-1142905761
powerchute
2006-03-21 04:49
2006.06.18
Управление настройками электропитания


2-1148196813
Belorus
2006-05-21 11:33
2006.06.18
Список процедур в библиотеке


2-1149092376
Loginov Dmitry
2006-05-31 20:19
2006.06.18
Работа с пакетами


2-1148990487
Std
2006-05-30 16:01
2006.06.18
Напоминалка




   Наверх