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

Вниз

Помогите создать класс, принимающий сообщения   Найти похожие ветки 

 
Holy   (2002-11-11 11:42) [0]

Уважаемые Мастера! Хоть что-то подобное уже и спрашивалось, но ответа я там не нашел :). Нужно написать что-то вроде векторного редактора. Хотелось бы не отслеживать самому над каким объектом прошла мышь, а чтоб они сами о этом говорили. Т.е. нужен класс, который умеет принимать сообщения. Я и в исходниках смотрел, но к сожалению опыта маловато - не разобрался... Дайте дельный совет. Заранее спасибо.


 
Skier ©   (2002-11-11 11:46) [1]

>Holy

> . Хотелось бы не отслеживать самому над каким объектом прошла
> мышь, а чтоб они сами о этом говорили.

обрабатывай сообщения
CM_MOUSEENTER и CM_MOUSELEAVE


 
Marcus   (2002-11-11 11:51) [2]

Проблема в том, что мышинные сообщения (как и любые другие) получают только окна, т.е. объекты либо унаследованные от TWinControl (у них есть Handle типа HWND) либо которые сами создают внутри себя окно. Иначе придется отслеживать сообщения от всей рабочей области рисования, а затем по координатам смотреть, над каким объектом мышь. На мой взгляд второй вариант хоть и более сложный, но менее ресурсоемкий, т.к. WinControl занимает памяти больше, чем просто наследник TObject или даже TComponent

type TGraphicObject = class(TWinControl)
public
...
procedure WMMouseMove(var Message: TMessage); message WM_MOUSEMOVE;
...
end;

Аналогично с другими сообщениями



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-69306
kex86
2002-11-12 14:17
2002.11.21
XP-manifest


1-69407
Eva
2002-11-10 18:06
2002.11.21
Экспортирование отчетов FastReport в Excel


6-69471
MK
2002-09-19 14:16
2002.11.21
Как узнать через TidHTTP, требует ли сервер логин и пароль?


4-69645
Novichek
2002-10-11 19:44
2002.11.21
повторій запуск чужих программ - как этого избежать?


4-69626
Tihas
2002-10-10 01:33
2002.11.21
Если какой способ копировать элементы управления, допустим меню