事件的响应程序段一般是一个过程,用事件的名称来命名。
一段事件响应代码应置于何处,是由事件发生的顺序决定的。
表单中所有对象的Init事件将在表单的Init事件之前执行,所以在表单显示以前,就可在表单的Init事件代码中处理表单上的任意一个对象。
若要在列表框、组合框或复选框的值改变时执行某代码,可将它编写在InteiactiveChange事件(不是Click事件)中,因为一般而言,对象的值的改变并不触发对象的Click事件,有时对象的值没改变,而C1ick事件却会发生。
当拖动一对象时,系统将忽略其他鼠标事件。例如,在拖放操作中:MotlseUp和Mot,se—Move事件不会发生。
Valid和when事件有返回值,默认为“真”(.T.)。若从when事件返回“假”(.F.)或O,对象将不能被激活。若从Valid事件返回“假”(.F.)或O,不能将焦点从对象上移走。
方法程序的层次
(1)容器事件和对象事件
为对象编写事件代码时,应注意以下两条基本规则:
①容器不处理与所包含的对象相关联的事件。
②若没有与某对象相关联的事件代码,则Visual FoxPro在该对象所在类的层次结构中逐层向上检查是否有与此事件相关联的代码。
当用户以任意一种方式(使用Tab键、单击鼠标、将鼠标指针移至对象上等)与对象交互作用时,对象事件被触发。每个对象只接收自己的事件。例如,尽管命令按钮位于表单上,当用户单击命令按钮时,不会触发表单的Click事件,只触发命令按钮的Click事件。
容器事件代码与其所包含的对象事件代码相互独立。
若没有与命令按钮相关联的Click事件代码,尽管有与表单相关联的Click事件代码,当用户单击按钮时,也不会执行与表单相关联的Click事件代码。
这条规则也适用于表格控件。表格包含列,列又包含标头和文本框。当事件发生时,只有与事件相关联的最底层对象识别该事件,高层的容器不识别这个事件。
【OOP方法中对象对事件的反应】相关文章:
2025年外省高中学业水平合格性考试成绩转入江苏认定的通告公布05-15
2012宁夏高考报名方式05-15
Vb中控件的自动排列05-15
写未来的作文300字05-15
Our Mother Is the Same 我们的妈妈是一样的05-15
中国大地保险公司实习报告05-15
小学父爱的作文600字05-15
07年4月北师大“中国古代文学史(一)”串讲(5)05-15
汪涵讲述小时候成长经历:鸡毛掸子的故事05-15
2023年广东梅州中考成绩查询时间及查分入口[7月7日起]05-15
关于清明节的英语作文:清明节05-15
