C# WinForm中Panel实现用鼠标操作滚动条的实例方法
程序员文章站
2023-12-05 20:58:16
方法如下:在窗体的load事件注册滚动事件,并增加对应的方法
复制代码 代码如下:private void formsample_load(object sender,...
方法如下:
在窗体的load事件注册滚动事件,并增加对应的方法
复制代码 代码如下:
private void formsample_load(object sender, eventargs e)
{
//注册事件
this.mousewheel += new mouseeventhandler(formsample_mousewheel);
}
/// <summary>
/// 滚动方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void formsample_mousewheel(object sender, mouseeventargs e)
{
//获取光标位置
point mousepoint = new point(e.x,e.y);
//换算成相对本窗体的位置
mousepoint.offset(this.location.x, this.location.y);
//判断是否在panel内
if (pnldownload.rectangletoscreen(
pnldownload.displayrectangle).contains(mousepoint))
{
//滚动
pnldownload.autoscrollposition = new point(
, pnldownload.verticalscroll.value - e.delta);
}
}