WinForm中Panel实现用鼠标操作滚动条
2007-04-28 11:38
513 查看
由于在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);
}
}
方法如下:
在窗体的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);
}
}
相关文章推荐
- 【转】C# WinForm中Panel实现用鼠标操作滚动条
- C# WinForm中Panel实现用鼠标操作滚动条的实例方法
- C# WinForm中Panel实现用鼠标操作滚动条
- C# WinForm中Panel实现用鼠标操作滚动条
- 解决Winform中鼠标滚轮无法操作Panel滚动条的问题
- 2012-02-21Winform Panel控件 鼠标滚动效果实现
- C# panel控件实现鼠标滚轮滚动拖动滚动条
- C# winform datagridview中如何实现鼠标右键点击一行数据出现一个带有删除的菜单,并能执行删除操作?
- css实现鼠标移入table时出现滚动条且table内容不移位
- 用Python+Selenium模拟键盘和鼠标操作,实现自动签到
- 一个通过BackgroundWorker实现WinForm异步操作的例子
- C# SendInput 模拟鼠标操作的实现方法
- C# BackgroundWorker实现WinForm异步操作的例子
- JS实现网页滚动条感应鼠标变色的方法
- AS3实现RPG游戏鼠标8方向操作
- 更改windows7鼠标滚轮的方向,按滚动条,按手指(触摸屏操作模式),跟mac一样,在windows中使用mac鼠标模式
- winForm 实现鼠标拖动
- 【jQuery】鼠标进入\离开操作实现div显示\隐藏
- 实现c#中winform窗体嵌入并操作可视化Excel表格
- C# BackgroundWorker实现WinForm异步操作的例子