Форум: "Начинающим";
Текущий архив: 2008.07.06;
Скачать: [xml.tar.bz2];
Внизкак узнать сообщение Найти похожие ветки
← →
sydenis (2008-06-09 16:15) [0]Двум событиям контрола присвоен один обработчик, напр, на вхождение и выхождение мыши. Но хотелось бы чтоб этот обработчик внутри себя отличал WM_MOUSLEAVE от ..ENTER. Как бы из Senderа вытянуть полученный месадж?
← →
Поросенок Винни-Пух © (2008-06-09 16:23) [1]смотреть позицию мышинного курсора
← →
Юрий Зотов © (2008-06-09 16:23) [2]Если эта информация нигде не хранится, то и вытаскивать ее неоткуда. Значит, или Sender должен хранить ее внутри себя, или ее надо устанавливаеть где-то снаружи, в момент прихода самого сообщения (например, переключать флажок в Application.OnMessage).
Но проще сделать разные обработчики. Если они имеют общую часть, то ее можно вынести в отдельный метод. Например:
В OnEnter:
Handler(Sender, True);
В OnExit:
Handler(Sender, False);
Общий обработчик:
pocedure TForm1.Handler(Sender: TObject; IsEnter: boolean);
← →
Anatoly Podgoretsky © (2008-06-09 16:33) [3]> sydenis (09.06.2008 16:15:00) [0]
Два разных обработчика и третья процедура с общей частью.
← →
sydenis (2008-06-09 16:55) [4]
> Но проще сделать разные обработчики. Если они имеют общую
> часть, то ее можно вынести в отдельный метод.
вот сейчас и сделано, просто хотелось уже что-то поизящней придумать..
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.07.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.044 c