我想做一个自动查询,textbox控件获得焦点,刷卡,textbox的内容为卡内信息。我想要刷完卡无须任何操作,自动在数据库里查询该卡所对应的记录。请问该怎么做(是用text的什么事件还是其它的方法?)?

解决方案 »

  1.   

    在TEXTBOX的CHANGE事件里添加你需要的代码
      

  2.   

    TEXTBOX的CHANGE事件是每输入或删除一个字符都要触发的可我要输入的是一个字符串呀!
      

  3.   

    一般来说,刷卡后输入的字符串都有一个结束字符,或者是Tab或者是enter.
    你试试
    Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then
    msgbox "this is enter"
    End If
    debug.print keyascii
    End Sub
    另外:字符集如下:字符集 (0–127)
        0 ?/FONT> 32 [space] 64 @ 96 ` 
    1 · 33 ! 65 A 97 a 
    2 · 34 " 66 B 98 b 
    3 · 35 # 67 C 99 c 
    4 · 36 $ 68 D 100 d 
    5 · 37 % 69 E 101 e 
    6 · 38 & 70 F 102 f 
    7 · 39 ' 71 G 103 g 
    8 * * 40 ( 72 H 104 h 
    9 * * 41 ) 73 I 105 i 
    10 * * 42 * 74 J 106 j 
    11 · 43 + 75 K 107 k 
    12 · 44 , 76 L 108 l 
    13 * * 45 - 77 M 109 m 
    14 · 46 . 78 N 110 n 
    15 · 47 / 79 O 111 o 
    16 · 48 0 80 P 112 p 
    17 · 49 1 81 Q 113 q 
    18 · 50 2 82 R 114 r 
    19 · 51 3 83 S 115 s 
    20 · 52 4 84 T 116 t 
    21 · 53 5 85 U 117 u 
    22 · 54 6 86 V 118 v 
    23 · 55 7 87 W 119 w 
    24 · 56 8 88 X 120 x 
    25 · 57 9 89 Y 121 y 
    26 · 58 : 90 Z 122 z 
    27 · 59 ; 91 [ 123 { 
    28 · 60 < 92 \ 124 | 
    29 · 61 = 93 ] 125 } 
    30 · 62 > 94 ^ 126 ~ 
    31 · 63 ? 95 _ 127 · 
    *·Microsoft Windows.不支持这些字符。* *值 8、9、10 和 13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响。
    字符集 (128 – 255)
        128 · 160 [space] 192 à 224 à 
    129 · 161 ?/FONT> 193 á 225 á 
    130 · 162 ¢ 194 ?/FONT> 226 a 
    131 · 163 £ 195 ?/FONT> 227 ?/FONT> 
    132 · 164 ¤ 196 ?/FONT> 228 ?/FONT> 
    133 · 165 ¥ 197 ?/FONT> 229 ?/FONT> 
    134 · 166 | 198 ?/FONT> 230 ?/FONT> 
    135 · 167 § 199 ?/FONT> 231 ?/FONT> 
    136 · 168 ¨ 200 è 232 è 
    137 · 169 &copy; 201 é 233 é 
    138 · 170 a 202 ê 234 ê 
    139 · 171 ?/FONT> 203 ?/FONT> 235 ?/FONT> 
    140 · 172 ?/FONT> 204 ì 236 ì 
    141 · 173 - 205 í 237 í 
    142 · 174 &reg; 206 ?/FONT> 238 ?/FONT> 
    143 · 175 ˉ 207 ?/FONT> 239 ?/FONT> 
    144 · 176 ° 208 D 240 e 
    145 ‘ 177 ± 209 ?/FONT> 241 ?/FONT> 
    146 ’ 178 2 210 ò 242 ò 
    147 · 179 3 211 ó 243 ó 
    148 · 180 ′ 212 ?/FONT> 244 ?/FONT> 
    149 · 181 μ 213 ?/FONT> 245 ?/FONT> 
    150 · 182 ?/FONT> 214 ?/FONT> 246 ?/FONT> 
    151 · 183 · 215 × 247 ÷ 
    152 · 184 ?/FONT> 216 ?/FONT> 248 ?/FONT> 
    153 · 185 1 217 ù 249 ù 
    154 · 186 o 218 ú 250 ú 
    155 · 187 ?/FONT> 219 ?/FONT> 251 ?/FONT> 
    156 · 188 ?/FONT> 220 ü 252 ü 
    157 · 189 ?/FONT> 221 Y 253 y 
    158 · 190 ?/FONT> 222 T 254 t 
    159 · 191 ?/FONT> 223 ?/FONT> 255 ? 
    ·Microsoft Windows 并不支持这些字符。本表中的值是 Windows 的默认值。 ANSI 特征集中 127 以上的值是由与操作系统有关的代码页决定的。
      

  4.   

    你的条码一定有一定的长度,那么我们就可以在change事件中对他的长度进行检测,如果达到我们要求的长度了,那么我们就有理由认为刷卡结束了,然后对其进行处理,同时还可以用一个timer,对一次刷卡的时间进行检测,如果时间过长,就认为刷卡失败,然后进行相应的处理,我觉得这样做是比较完善的。
      

  5.   

    这个问题我个人认为apple_001(天堂里的狼) 的办法比较好一点!
    wangluonanhai(网络男孩) 说的也没有错,不过这样做还是要有一步操做来使TEXTBOX失去焦点才能够查询的,而CHANGE事件是每有一个字符的变动都会触发的,可是只要限制了长度就不用每输入一个字符就去查一次了。整个输入完成后才会自动查询。这样我的20分就给wangluonanhai(网络男孩) 5分、给apple_001(天堂里的狼) 15分了,同意吗?