Очень нужно сделать кнопку в виде картинки (без рамки) с тремя состояниями:
в нормальном режиме отображается одна картинка, при наведении мыши — другая, при нажатии — третья. Помогите примером или объясните, как можно отследить уход мыши с кнопки.
Здравствуйте, Куликов А.В., Вы писали:
КАВ>Очень нужно сделать кнопку в виде картинки (без рамки) с тремя состояниями: КАВ>в нормальном режиме отображается одна картинка, при наведении мыши — другая, при нажатии — третья. Помогите примером или объясните, как можно отследить уход мыши с кнопки.
Отследить крысу на кнопке(любом контроле) или ее уход с нее(любого контрола) так:
TRACKMOUSEEVENT tm;
tm.cbSize=sizeof(tm);
tm.dwFlags=TME_LEAVE;// флаг действия,в данном случае уход
tm.dwHoverTime=HOVER_DEFAULT;
tm.hwndTrack=m_hWnd;// указатель на окно, за которым следить
TrackMouseEvent(&tm);
Здравствуйте, Куликов А.В., Вы писали:
КАВ>Очень нужно сделать кнопку в виде картинки (без рамки) с тремя состояниями: КАВ>в нормальном режиме отображается одна картинка, при наведении мыши — другая, при нажатии — третья. Помогите примером или объясните, как можно отследить уход мыши с кнопки.
По-моему, нужно отрабаьывать сообщения WM_MOUSEENTER, WM_MOUSELEAVE.
Здравствуйте, Куликов А.В., Вы писали:
КАВ>Очень нужно сделать кнопку в виде картинки (без рамки) с тремя состояниями: КАВ>в нормальном режиме отображается одна картинка, при наведении мыши — другая, при нажатии — третья. Помогите примером или объясните, как можно отследить уход мыши с кнопки.
Я не знаю подойдёт ли тебе ActiveX control, не плохой: http://www.station-media.com/smbutton/index.htmlЕсли подойдёт и найдёшь крек пришли мне shabshay@hotmail.com
Здравствуйте, Куликов А.В., Вы писали:
КАВ>Очень нужно сделать кнопку в виде картинки (без рамки) с тремя состояниями: КАВ>в нормальном режиме отображается одна картинка, при наведении мыши — другая, при нажатии — третья. Помогите примером или объясните, как можно отследить уход мыши с кнопки.
Проще всего (и 90% случаев вполне годится) пустить у диалога таймер 100 мс, который вызывает GetCursorPos(), GetKeyState(), GetWindowRect(), PtInRect() и (в случае смены статуса вне/внутри/нажата) SetBitmap().