Здравствуйте Alexander2002, Вы писали:
A>Здравствуйте!
A>Нужна помощь в плане изменения вида кнопки при наведении на нее
A>мышки. Я встречал исходные тексты программ связанных с изменением
A>внешнего вида кнопки при наведении на нее курсора мышки, но они
A>написаны для компиляторов (программ), которые половину приложения
A>пишут сами. Я же все от и до конца пишу сам, в связи с этим у меня
A>возникла такая проблема. Я не знаю, как это сделать (перепробовал
A>много вариантов, но успеха не достиг).
A>Прошу Вас помочь в решении этой проблемы.
A>Заранее благодарю
A>Александр
A>г. Челябинск
A>E-mail: qwerty@74.ru
Один из путей решения: используешь
WM_SETCURSOR, в обработчике делаешь
TrackMouseEvent и ловишь
WM_MOUSELEAVE.
P.S. Ставь оценку побольше, а то скоро меня раскулачивать будут
Здравствуйте Dr_Sh0ck, Вы писали:
DS>Здравствуйте Alexander2002, Вы писали:
A>>Здравствуйте!
A>>Нужна помощь в плане изменения вида кнопки при наведении на нее
A>>мышки. Я встречал исходные тексты программ связанных с изменением
A>>внешнего вида кнопки при наведении на нее курсора мышки, но они
A>>написаны для компиляторов (программ), которые половину приложения
A>>пишут сами. Я же все от и до конца пишу сам, в связи с этим у меня
A>>возникла такая проблема. Я не знаю, как это сделать (перепробовал
A>>много вариантов, но успеха не достиг).
A>>Прошу Вас помочь в решении этой проблемы.
A>>Заранее благодарю
A>>Александр
A>>г. Челябинск
A>>E-mail: qwerty@74.ru
DS>Один из путей решения: используешь WM_SETCURSOR, в обработчике делаешь TrackMouseEvent и ловишь WM_MOUSELEAVE.
DS>P.S. Ставь оценку побольше, а то скоро меня раскулачивать будут
DS>
Вообще-то
TrackMouseEvent не работает в win95 если тебе это критично, то обрабатывай
WM_MOUSEMOVE,
и смотри, находится ли курсор над кнопкой. Для этого юзай:
GetCursorPos
WindowFromPoint
ChildWindowFromPoint
Как только тебе приходит сообщение
WM_MOUSEMOVE, смотри, был ли курсор вне кнопки до этого. Если да, то делаешь
SetCapture, чтобы
WM_MOUSEMOVE тебе прилетал, даже если курсор выйдет за границы кнопки. Как только обнаружишь, что курсор таки вылез, делаешь
ReleaseCapture и все.
Здравствуйте ZakkeR, Вы писали:
ZR>Вообще-то TrackMouseEvent не работает в win95 если тебе это критично, то обрабатывай WM_MOUSEMOVE,
ZR>и смотри, находится ли курсор над кнопкой. Для этого юзай:
Вапче-то есть еще
_TrackMouseEvent, которая покатить для Win95 с IE3. Так что, читайте MSDN