鼠标在slide控件的任意位置上点击,滑块滑动到该位置是如何实现的,有什么属性吗?

void CTestDlgDlg::OnReleasedcaptureSlider1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
CRect rcClient;
m_Slid.GetClientRect( &rcClient );
CRect rcWindow;
m_Slid.GetWindowRect( &rcWindow );
POINT point;
GetCursorPos( &point );
point.x = point.x - rcWindow.left;
point.y = point.y - rcWindow.top;
if ( rcClient.PtInRect( point ) )
{
int nPos = point.x * 100 / rcClient.Width();
m_Slid.SetPos( nPos );
}

*pResult = 0;
}

如果你想给图片添加更平滑的效果,比如淡入淡出以及滑动消失,可以稍微调整JavaScript部分。这里是一个带渐变动画的示例: 首先,更新CSS以添加过渡效果: ```css .hidden-image { opacity: 0; transition: opacity 0.5s ease-in-out; /* 添加渐变动画 */ position: absolute; /* 让图片绝对定位以便于移动 */ transform-origin: center; /* 设置图片变换原点,使移动均匀 */ } /* 添加滑动消失的样式,如向右滑动 */ .hidden-image.slide-off-right { right: -100%; /* 初始位置在右侧完全隐藏 */ transition: right 0.5s ease-in-out; } ``` 然后,在JavaScript中添加额外的类以触发滑动消失效果: ```javascript $(document).ready(function() { $('.text').on('mouseover', function() { var index = $(this).index(); $('.hidden-image').eq(index).stop() .addClass('slide-on') .one('transitionend', function() { $(this).removeClass('slide-on'); }); // 添加滑入类,并在动画结束时移除 }); $('.text').on('mouseout', function() { var index = $(this).index(); $('.hidden-image').eq(index) .addClass('slide-off-right') // 添加滑出类 .one('transitionend', function() { $(this).parent().find('.hidden-image').eq(index).remove(); }); // 移除并删除图片 }); }); // 附加CSS类以控制动画 $('.hidden-image').hover( function() { $(this).addClass('slide-on'); }, function() { $(this).addClass('slide-off-right'); } ); // 定义滑动进入和离开类 .slide-on { opacity: 1; right: 0%; } .slide-off-right { opacity: 0; right: -100%; } ``` 现在,当鼠标悬停时,图片会淡入;移开时,图片会向右滑动并从DOM中移除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值