十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
在VB.Net当中,事件的"关联"是需要明显标志的,不像vb6当中,声明一个过程就是事件执行过程了
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、虚拟空间、营销软件、网站建设、莲都网站维护、网站推广。
Handles用来静态"关联"一个或多个事件到一个过程
"关联"时,过程的签名必须与事件的签名相同(签名的意义请查看相关文档)
在VB.Net当中,事件也是一个对象(VB.Net当中一切皆为对象)
使用Handles时实际就相当于创建了一个对委托的实现(委托的意义请查看相关文档)
可以简单的认为,当事件被触发时,被Handles"关联"了的那些过程代码将被执行
而且,被"关联"的过程可以任意起名,不需要与事件和对象的名称相对应
上述代码如果去掉Handles 及其后面的内容,它将是一个最普通不过的过程,与其它过程没有两样,也不会有任何事件被触发时去执行这段代码,正因为加入了Handles 及其后面的一堆事件,它才会因事件被触发而被执行
说得再简单一点: 当PictureBox1.DoubleClick, PictureBox4.DoubleClick, PictureBox3.DoubleClick,PictureBox2.DoubleClick当中的任何一个事件被触发时,上述这个过程的代码都将被执行
再说说参数: sender表示触发了此事件的对象,在这里就是PictureBox1/PictureBox2/PictureBox3/PictureBox4当中的某一个,利用它能知道到底是哪个对象触发了此事件,e在这里没有用处,利用不到什么,之所以有它,是因为Object/EventArgs是.Net事件的基本签名方式,它的好处在你以后对.Net深入之后能体会到.
这些参数的值都是通过被触发的事件传递过来的,可以简单的认为[事件调用了此过程并为参数赋了值]
自己仔细对比啊,就是说你同一个函数声明了多次,删除重复的就可以了。
项目属性引用
在列表中找到Shape什么的Dll然后它的属性里的复制本地设置为True。
然后那些dll和exe一起复制下来。
然后在XP运行。
对象.gettype.
你没看后面的点吗?后面有一连串以get开头的返回方法
GetFields返回对象类型的所有公共字段
GetMethods返回对象类型的所有公共sub方法
GetMembers 返回对象类型的所有公共成员,成员包括属性、方法、字段、事件等。
GetProperties 返回对象类型的所有公共属性
GetEvents 返回对象类型的所有公共事件