北京 吴昊江
---- Combo方式的输入域,可在程序中事先设定好一组数据,由用户以下拉方式来选择输入项目,这种工作方式可方便用户的使用是显而易见的,使用者无需记住输入的数据,只要拉下数据列表表框,从中选出自己所需的数据便可,特别是对于那些不熟练的用户来说,这种输入方式还兼有使用向导的功能。但是此方法对于那些熟练的用户,对于所选择的数据列表数据量非常大时,就显的不是那么方便有效了,繁琐的选择数据可能还会给用户带来不少烦恼,降低使用效率。若我们能提供用户选择方式的同时,还可让用户自己能输入数据,并限定输入的数据必须在 Combo的列表数据中,当输入的数据不在Combo的列表数据中时给用户以提示信息,让其重新输入,这样就可满足不同用户的需求,提高Combo的使用效率。本文在此给出一种实现的方法,供大家参考。
---- 在Combo域输入中有一个名叫Validate的事件,它是用来检查用户输入的数据是否是有效的数据,我们可在此事件中来检查用户的输入。对于用户输入的数据是否落在数据列表集合中,Combo中有这样一个属性来表示,MathWithList。知道了这些条件,此问题的解决就变的非常容易了。用户可用下面提供的这段程序来判断Combo域输入的数据是否是数据列表中的数据,若是将提示OK,否则提示ERR,Combo的BoundText属性表示用户输入的数据,在此用MSGBOX一同提示给用户查看。
---- 此程序在VB6.0上实现。
Private Sub DataCombo1_Validate(Cancel As Boolean)
If DataCombo1.MatchedWithList Then
MsgBox "OK"
MsgBox DataCombo1.BoundText
Else
MsgBox "ERR"
MsgBox DataCombo1.BoundText
End If
End Sub
……