Private Sub Command1_Click() 
Winsock1.LocalPort = 0 
Winsock1.RemoteHost = "192.168.0.0" 
Winsock1.RemotePort = "6000" 
Winsock1.Connect 
Dim tt As String tt = "disp ldn=123456789;" Winsock1.SendData tt Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim ljy As String Winsock1.GetData ljy 
RichTextBox1.Text = RichTextBox1.Text + ljy If Winsock1.State = 7 Then 
Sleep 500 
DoEvents Command3_Click 我想等到richtextbox的内容显示完毕后,自动点击command3 但是一直执行command3_click ,请高手指教,我怎么才能只执行一次command3_click呢???????

解决方案 »

  1.   

    定一个布尔全局变量,若执行过了为True,不再执行
      

  2.   

    dim s as doubledo
        s = timer
        do
            doevents
        loop while timer - start < 1   '1秒
         Command3_Click
    loop while 1
      

  3.   

    dim flag as boolean
    ....
    if not flag then
    Command3_Click
    flag=true
    endif
      

  4.   


    dim start as doubledo
        start = timer
        do
            doevents
        loop while timer - start < 1   '1秒
         Command3_Click
    loop while 1
      

  5.   

    不行 老是重复点击Command3_Click?????????? 你的这段程序放在哪个位置?
      

  6.   

    dim flag as boolean 
    放在通用
      

  7.   

    public a as long
    Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim ljy As String Winsock1.GetData ljy 
    RichTextBox1.Text = RichTextBox1.Text + ljy If Winsock1.State = 7 Then 
    Sleep 500 
    DoEvents 
    if a=0 then
    Command3_Click 
    a=1
    end if
      

  8.   


    这个代码可以 ,如果我想执行完command3_click后输出内容,再执行一次command4_click 怎么再写代码呢?????
      

  9.   

    执行完command3_click后richtextbox1又输出一些内容,我想再执行一下command4_click 怎么做啊?