Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Плохо ловится WM_DRAWCLIPBOARD ричедитом   Найти похожие ветки 

 
TStas   (2012-05-21 17:05) [0]

Ловлю так, как в книжке написано:
procedure TStCodeEditor.WMDrawClipboard(var Msg: TWMDrawClipboard);
begin
 SendMessage(FClipBoardOwner, WM_DRAWCLIPBOARD, 0, 0);
 Msg.Result := 0;
 ShowMessage("WM_DRAWCLIPBOARD");
 ClipBoardChanged;
end;

Ещё ловятся сообщения
EM_STREAMIN;
WM_PAINT;
WM_RBUTTONUP;
WM_RBUTTONDOWN;
WM_DRAWCLIPBOARD;
EM_SETREADONLY;
CN_KEYDOWN;
CN_KEYUP;
WM_PASTE;
WM_SETTEXT;
WM_MOUSEMOVE;
Наблюдателя создаю в конструкторе. Раньше всё было нормально. А теперь установил компонент в среду, исправил косяки и сдуру стёр все старые варианты. Сообщения, перечисленные выше, и раньше ловились.
В принципе, один раз сообщение ловится, но когда я начинаю в буфер копировать не текст, например, файлы, то об этом сообщение не доходит. Специально на форму положил EDit, чтобы с ним сравнивать. С эдитов всё нормально. Он делает недоступной вставку, когда в буфере не текст, а мой не делает. :(
Главное, непонятно где искать косяк. Просмотрел всю родословную до TControl, никто из них не отлавливает WM_DRAWCLIPBOARD. Но EDit ведь знает об изменении содержимого буфера.
С какой хоть стороны косяк искать?


 
TStas   (2012-05-21 19:33) [1]

Оказалось, надо CreateWnd перекрывать. Ведь когда она вызывается, меняется Handle, соответсвенно, наблюдатале уведомляет по недействительному дискриптору. :) Сам додумался:)
Вопрос снят. Не знаю, правильно ли я сделал, что написал? А то такая странная ветка получается: "Тихо сам с собою я веду беседу". :)


 
Давайте будем жрать!   (2012-05-21 21:57) [2]


> Не знаю, правильно ли я сделал, что написал?
Вполне правильно.



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

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

Наверх




Память: 0.47 MB
Время: 0.052 c
2-1329473098
harisma
2012-02-17 14:04
2013.03.22
Библиотека типов в Делфи


4-1258127067
harisma
2009-11-13 18:44
2013.03.22
Major/Minor OS Version


15-1331152205
Юрий
2012-03-08 00:30
2013.03.22
С днем рождения ! 8 марта 2012 четверг


15-1347821674
Dmitry375
2012-09-16 22:54
2013.03.22
Running Delphi on Mac OS X


15-1331287470
Александар
2012-03-09 14:04
2013.03.22
Подмена(дублированя) пакетов между клиентом и определёном ip