VB6 循环有关问题

VB6 循环问题
各位好:
小弟在循环程序中,设两个循环,第一个循环打出3个A后,继续打B跟C各一次,(以上为第二个循环)接着跳回第一个循环打3个A,然后再B跟C共循环10次。因为我想在TEXT中输入A的次数,以及第二个循环次数,才会如此设定,现在问题发生在VB6的环境中执行,第一次执行完毕准备跳第二个循环时,组件会反白(类似当机),但是全部执行完毕后,第二次就可正常运行,但是组件会跟记事本一起自动最小化。接着在档案功能中→选择制成EXE檔执行,一样会发生以上事件,而且A只出现一次,B则都未出现,结果如下:
acccccccccc
aaabcaaabcaaabcaaabcaaabcaaabcaaabcaaabcaaabcaaabc 此为在VB6下正常执行结果。
请问小弟该如何做,才能解决以上问题,以下是小弟的程序代码
烦请各位帮小弟解答
谢谢大家

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Integer, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Integer
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Integer
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Dim lhwnd, ledit As Integer
Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = Text1
End Sub


Private Sub Timer1_Timer()
lhwnd = FindWindow(vbNullString, "未命名 - 記事本")
hedit = FindWindowEx(lhwnd, 0, "edit", vbNullString)
If hedit <> 0 Then
Timer1.Enabled = False
End If
End Sub


Private Sub Command1_Click()
Dim x As Integer, y As Integer
  Const WM_KEYDOWN = &H100
  Const WM_KEYUP = &H101
  Const WM_CLOSE = &H10
  Const VK_A = &H41
  Const VK_B = &H42
  Const VK_C = &H43
For y = 1 To 10
For x = 1 To 3
PostMessage ledit, WM_KEYDOWN, VK_A, 0
Sleep 1000
If x = 3 Then
 PostMessage ledit, WM_KEYDOWN, VK_B, 0
 Sleep 1000
 PostMessage ledit, WM_KEYDOWN, VK_C, 0
 Sleep 1000
End If
Next x
Next y
End Sub



------解决方案--------------------
這樣呢?
VB code
Private Sub Command1_Click()
  Dim X As Integer, Y As Integer
  Const WM_KEYDOWN = &H100
  Const WM_KEYUP = &H101
  Const WM_CLOSE = &H10
  Const VK_A = &H41
  Const VK_B = &H42
  Const VK_C = &H43
  
  For Y = 1 To 10
      For X = 1 To 3
          PostMessage lEdit, WM_KEYDOWN, VK_A, 0
          PostMessage lEdit, WM_KEYUP, VK_A, 0
          Sleep 1000
          DoEvents
          If X = 3 Then
             PostMessage lEdit, WM_KEYDOWN, VK_B, 0
             PostMessage lEdit, WM_KEYUP, VK_B, 0
             Sleep 1000
             PostMessage lEdit, WM_KEYDOWN, VK_C, 0
             PostMessage lEdit, WM_KEYUP, VK_C, 0
             Sleep 1000
          End If
      Next 'X
  Next 'Y
End Sub