VBA提高篇_23 Change事件_事件处理自动跳转_事件级联处理

1.Change事件

1.1 Change事件的触发时间

发生变化后触发本事件

  • SelectionChange的区别: SelectionChange选中时触发本事件

在这里插入图片描述

1.2 Change事件的触发条件

在这里插入图片描述

Private Sub Worksheet_Change(ByVal Target As Range)
    MsgBox Target.Address
    Target.Value = "发生Change事件"
End Sub

1.3.事件的级联响应

注意: VBA对单元格的修改也会触发Change事件,避免级联响应

Application.Events属性
在这里插入图片描述

Application.Events属性

Private Sub Worksheet_Change(ByVal Target As Range)
       If Target.Row > 3 And Target.Column = 4 Then
            If Not IsNumeric(Target) Or Target > 100 Or Target < 5 Then
                MsgBox "武力值必须是0-100之间的数字"
                Target.Select
                
                Application.EnableEvents = False
                Target.Value = "待输入"
                
                Application.EnableEvents = True
             End If
        End If
        
End Sub

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Mybatis的级联查询可以通过在Mapper文件中使用嵌套查询的方式实现,具体步骤如下: 1. 在POJO类中定义关联属性(如一对多、多对多等),并提供对应的setter和getter方法。 2. 在Mapper文件中定义对应的嵌套查询语句,使用关联属性的getter方法来获取关联对象的数据,例如: ```xml <select id="findUserById" parameterType="int" resultMap="userResultMap"> select * from user where id = #{id} </select> <resultMap id="userResultMap" type="User"> <id column="id" property="id"/> <result column="username" property="username"/> <result column="age" property="age"/> <association property="department" javaType="Department"> <id column="dept_id" property="id"/> <result column="dept_name" property="name"/> </association> </resultMap> <select id="findUserWithDeptById" parameterType="int" resultMap="userResultMap"> select u.*, d.dept_name from user u left join department d on u.dept_id = d.id where u.id = #{id} </select> ``` 在上述代码中,`findUserById`只查询User表中的数据,而`findUserWithDeptById`则查询User表和Department表中的数据,并将Department作为User对象的关联属性返回。 3. 在业务层中调用Mapper接口的方法,即可进行级联查询,例如: ```java User user = userMapper.findUserWithDeptById(1); System.out.println(user.getDepartment().getName()); ``` 在上述代码中,`userMapper.findUserWithDeptById`方法会返回一个User对象,其中的Department属性已经被赋值为关联的Department对象,通过getDepartment()方法即可获取Department对象的数据。 需要注意的是,在进行级联查询时,需要定义好关联属性的类型和对应的嵌套查询语句,否则会导致查询失败或数据不完整。同时,级联查询也会增加数据库的查询开销,应该根据实际情况进行使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pigerr杨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值