Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.18;
Скачать: 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 вся ветка

Текущий архив: 2006.06.18;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.01 c
2-1149285805
mr1Andersen
2006-06-03 02:03
2006.06.18
Как сделать с помощью Delphi5 действие: Пуск-Выполнить ?


15-1148454022
Sergey13
2006-05-24 11:00
2006.06.18
Самосуд? Самозащита?


1-1147539751
Stalker.mg
2006-05-13 21:02
2006.06.18
полоса прокрутки на главной форме


15-1148664747
Логин
2006-05-26 21:32
2006.06.18
Как прикрутить FR 2.40 от Delphi 5 к BCB 6?


15-1148187592
mlm68
2006-05-21 08:59
2006.06.18
Как отправить SMS/MMS?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский