# 重覆执行的问题

Posted by Eric Liu on June 22, 1998 at 11:27:14:

我写了一个资料库维护的 Form
功能是按 "OK" button 将Form 上的资料新增至资料库
"OK" button 程式如下
SaveData 是 function 新增成功传回0
新增失败传回 Error Number

Private Sub CmdOk_Click()
'if flag=true then exit sub
If SaveData = 0 Then
Unload Me
edn if

End Sub

若我以 "Tab" 键将 Focus 移至 "Ok" button 然后快速连按 "Enter"键
理论上应执行一次就 unload me 了
但 VB 却执行了多次
(好像因为 SaveData 执行时间又接收 "Enter"键而触发 CmdOk_Click )

虽然可于 SaveData function 内设一个 Flag
若 SaveData 未执行完 flag=true
"OK" button 程式若发现 flag=true 则 exit sub
(注解符号那行)

但觉得此法太笨

且类似问题亦发生于 Form 切换时
当于 Form1 上 click 某 buttin 呼叫 Foem2.show 时
于Form2 未 Show起时
若再于 Form1 到处 Click
这些 Click Enent 会于Form2 Show起后触发于 Form2

请问这重覆执行的问题应如何解?

Follow Ups:

- Re: 重覆执行的问题 纪文和 14:43:02 6/23/98 (0)
- 注意 DoEvents 小吴 14:05:35 6/23/98 (3)
  - Re: 注意 DoEvents Eric Liu 14:14:05 6/24/98 (2)
    - Re: 注意 DoEvents Evan 20:29:58 6/24/98 (0)
    - 设定 Enabled 是没用的 小吴 16:43:58 6/24/98 (0)