文档章节

【C#】添加鼠标管轮事件

自然麻雀
 自然麻雀
发布于 2016/07/07 13:05
字数 305
阅读 12
收藏 0

对FlowLayoutPanel添加鼠标滚轮事件

在mainform中添加事件

his.flowLayoutPanel1.MouseWheel +=
                new System.Windows.Forms.MouseEventHandler(this.flowLayoutPanel1_MouseWheel);

添加滚轮事件函数:

private void flowLayoutPanel1_MouseWheel(object sender, MouseEventArgs e) { if (!(flowLayoutPanel1.VerticalScroll.Visible == false || (flowLayoutPanel1.VerticalScroll.Value == 0 && e.Delta > 0) || (flowLayoutPanel1.VerticalScroll.Value == lastRightPanelVerticalScrollValue && e.Delta < 0))) { flowLayoutPanel1.VerticalScroll.Value += 10; lastRightPanelVerticalScrollValue = flowLayoutPanel1.VerticalScroll.Value; flowLayoutPanel1.Refresh(); flowLayoutPanel1.Invalidate(); flowLayoutPanel1.Update(); } }

 

除此之外还要说的一点是,触发鼠标的滚动事件后,处理事件的函数参数 MouseEventArgs e 中有个Delta属性,默认情况下向上滚动e.Delta=120,向下滚动e.Delta=-120。以上的程序还不是特别完美,因为当Panel控件较大而没有显示滚动条时,或滚动条已在最上方而滚轮又是向上滚动,或滚动条已在最下方而滚轮又是向下滚动时,同样会执行Panel.Refresh();Panel.Invalidate();Panel.Update();等窗体重绘代码,占用较多资源。因此可以在执行这些代码前先对Panel的当前状况做判断。

int lastRightPanelVerticalScrollValue = -1;//为鼠标滚动事件提供一个静态变量,用来存储上次滚动后的VerticalScroll.Value

添加FlowLayoutPanel的鼠标进入事件和鼠标点击事件

private void flowLayoutPanel1_MouseEnter(object sender, EventArgs e) { flowLayoutPanel1.Focus(); } private void flowLayoutPanel1_MouseClick(object sender, MouseEventArgs e) { flowLayoutPanel1.Focus(); }

 

本文转载自:http://www.cnblogs.com/mzy-google/p/3765862.html

自然麻雀
粉丝 5
博文 31
码字总数 4080
作品 0
济南
产品经理
私信 提问
C# 如何在Excel中绘制图形

本篇文章将介绍C# 如何处理Excel图形相关的问题,包括以下内容要点: 1、绘制图形 绘制图形并添加文本到图形 添加图片到图形 设置图形阴影效果 2、 提取图形中的文本、图片 3、设置图形的显示...

E_iceblue
2018/07/13
0
0
原生 JS 撸一个轮播图(支持拖拽切屏)

FoxSlider.js 称不上库的库 1、简述 用惯了各种各样的组件,并没有真正意义上的封装一个可以拖拽切屏的轮播图,经过一番编写,发现写这样一个轮播图要想写的好,还真的是挺有难度,不同设备的...

forrest酱
06/05
0
0
C# 如何给Excel添加超链接

简介 超链接能够快速地将当前文本或图片链接到指定目标地址,在日常办公中给我们提供了极大的便利。本文将介绍在C#语言中如何通过免费版组件对Excel表格添加超链接,示例中将包含以下要点: ...

E_iceblue
2018/06/20
0
0
C#如何设置Excel文档保护——工作簿、工作表、单元格

简介 Excel在工作和学习中应用广泛,是必不可少的数据统计与处理工具。对于一些重要的Excel文件,只供特殊人员查看、编辑或者防止重要数据对外泄露时,就需要设置文档保护,包括设置访问密码...

E_iceblue
2018/06/12
0
0
C# 操作Excel图形——绘制、读取、隐藏、删除图形

简介 本篇文章将介绍C# 如何处理Excel图形相关的问题,包括以下内容要点: 1.绘制图形 1.1 绘制图形并添加文本到图形 1.2 添加图片到图形 1.3 设置图形阴影效果 2. 提取图形中的文本、图片 ...

E-iceblue
2018/08/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【JAVA基础☞内部存储和GC】Java方法区和永久代

Java方法区和永久代 这里只讨论HotSpot虚拟机,这也是目前使用的最多的JVM。Sun JDK7 HotSpot虚拟机的内存模型如下图所示: 1、什么是方法区 在Java虚拟机中,方法区是可供各线程共享的运行时...

卯金刀GG
5分钟前
0
0
Spring Boot Actuator

编者注 由于开发一个对性能要求很强的后台应用,突然发现部署到aliyun发生问题,而普通笔记本没有任何问题,则需要持续一段时间的监控定位函数执行时间,分析过程,并添加健康检查的可视化内...

抢小孩糖吃
6分钟前
0
0
Zabbix监控ActiveMQ

当我们在线上使用了ActiveMQ 后,我们需要对一些参数进行监控,比如 消息是否有阻塞,哪个消息队列阻塞了,总的消息数是多少等等。下面我们就通过 Zabbix 结合 Python 脚本来实现对 ActiveMQ...

SEOwhywhy
17分钟前
0
0
非webpack require.js + vue + vueRouter + iView 实现按需加载

适合一个人开发的时候,在整个php框架下,又想单页,又可以直接后端assign变量穿透到模板。又不想写接口搞前后分离脚手架一大堆npm 包, 在php模板下 引入require.js <!DOCTYPE html><html...

一箭落旄头
33分钟前
7
0
新特性解读 | MySQL 8.0 窗口函数详解

原创作者: 杨涛涛 背景 一直以来,MySQL 只有针对聚合函数的汇总类功能,比如MAX, AVG 等,没有从 SQL 层针对聚合类每组展开处理的功能。不过 MySQL 开放了 UDF 接口,可以用 C 来自己写UDF...

爱可生
39分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部