机房收费系统问题汇总(二) Combo控件数组的Change事件

        前几天在做机房收费系统的“上机状态查询”,遇见了这样一个问题。

       

        如图窗体,我想通过调节“组合关系”来控制这三排控件的Enable情况。想通过ComboBox的Change事件来实现调节他们的使用情况,即:

        首先,依次保持每个可用控件的输入框不能为空;

        然后,第一排始终保持可用;

                   组合关系一不为空时,第二排保持可用,为空则不可用;

                   组合关系二不为空时,第三排保持可用,为空则不可用。

         最后,执行查询。

               但是,当我编好代码执行时,却怎么也不能实现。

         开始以为其他方面可能有问题,就重新建立了一个试验窗体进行测试。

         代码如下:

Private Sub Combo1_Change(Index As Integer)
    If Combo1(0).Text = "" Then
        Combo1(1).Enabled = False
    Else
        Combo1(1).Enabled = True
    End If
End Sub

          前提条件:ComboBox的style属性为0

          这样执行的效果是:开始两个控件均可用,当combo(0)内输入内容再删除时才达到想要的效果,即combo(0)为空,combo(1)可用,反之不可用。

          当前提条件变为:ComboBox的style属性为2

          无论combo(0).Text的值是否为空,combo(1)的Enable都毫无反应。

          后来经过上网查找,才发现,ComboBox和Text的Change功能不一样,集中体现在它的Style属性上。

                  ComboBox-Change事件仅在Style属性设置为0(下拉Combo)或1(简单Combo)和正文被改变或者通过代码改变了Text属性的设置时才会发生。两个条件都要满足才触发CHANGE事件。而Text并没有Style属性。

           其实,实现开头所述的控制功能很简单,就是把ComboBox的Change事件改成Click事件就OK了。

           所以我们在认识和使用一个事物时,不能简单地套用类似事物的使用方法。对比学习很重要,但对比出新的东西,找出不同点,总结合并相同点才是学习一类事物的有效途径。

           

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值