C#panel的滚动条
在C#中,我需要用到panel的滚动条,如何让滚动条随着鼠标滚轮上下移动。现在显示的滚动条无法下移,滚动条会复位一直在上面。百度到的几种代码都没用。注:panel控件是代...
在C#中,我需要用到panel的滚动条,如何让滚动条随着鼠标滚轮上下移动。现在显示的滚动条无法下移,滚动条会复位一直在上面。百度到的几种代码都没用。注:panel控件是代码设置属性的,滚动条也是代码显示。望有专家或高手回答。
展开
1个回答
展开全部
panel是没有鼠标滚轮事件的,那是针对主容器载体form的。我简单举例,拖一个winform,然后拖一个panel,在panel里代码添加一个panel,通过数据库数据生成高度超出容器就出现滚动条,子panel模板top初始化为0,左右满屏,底部让容器覆盖隐藏,滚动条你自己用panel画一个漂亮点的,mouseWheel事件触发的时候就控制模板的top++或者--,注意临界值,不要一直递增,到顶了要停。旁边画的滚动条也跟着变化显示一下状态,就这么简单。
滚动事件:
void mouseWheel(object sender, MouseEventArgs e)
{
if (e.Delta > 0)
{
panel2.Top++;//下滚
}
else
{
//上滚
panel2.Top--;
}
}
然后加入事件:
private void Form1_Load(object sender, EventArgs e)
{
this.MouseWheel += new MouseEventHandler(mouseWheel);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询