如何实现通过鼠标的中间的滑轮控制滚动条? 如何实现通过鼠标的中间的滑轮控制滚动条?也就是鼠标的滚轴 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 就是scroll空间 用中间的滚轴控制 参照这个来做Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1588398由于在WinForm中Panel不能直接响应鼠标的滚动事件,只好采用捕获窗体的滚动事件。 方法如下:在窗体的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(0, pnlDownload.VerticalScroll.Value - e.Delta); } } 如何设置ConnectionTimeOut的连接时间? 奇怪的问题 能不能不用Timer组件控制时间? C#Oracle数据库写入 网页数据抽取软件(C#开发,要求提供源代码) C#中关于summary注释问题 C#.net 菜鳥問題 c#版xml和哈希表互操作,请大家帮忙解惑啊!谢谢了 请教数组交集算法,在线学习 如何指定IP来访问 服务组件 求物流专业术语的解释! c#判断你打开的应用程序是否以打开
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1588398由于在WinForm中Panel不能直接响应鼠标的滚动事件,只好采用捕获窗体的滚动事件。
方法如下:
在窗体的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(0, pnlDownload.VerticalScroll.Value - e.Delta);
}
}