我有两个窗体,form1和form2
在form1中点击按钮,弹出form2,但是form2的load事件操作了几个数据表,即form2的load事件读取表中很多数据,弹出时比较慢.
求:如何加一提示信息告诉操作人员,数据据正在加载中,谢谢

解决方案 »

  1.   

    sub form2_load()
    {
        form3.show
        '处理数据
        form3.progressbar1.value = 处理数据的进度 'form3里有一个进度条控件
        unload form3 '全部数据处理完
    }
      

  2.   

    form2加个状态烂,写着loading载入后,改成loaded
      

  3.   

    或者作个图片,显示载入,载入后设置visible=false
      

  4.   

    windcandle() ( ,您好,照你的方法试了,不行呀.
    进度条,不走吗?form2的load处理form3.show
    '从数据库中加载数据
    unload form3form3中加了个进度条(prog2)和定时器,    If Me.Prog2.Value = Me.Prog2.Max Then Me.Prog2.Value = 0
        Me.Prog2.Value = Me.Prog2.Value + 1不起作用呀.谢谢
      

  5.   

    进度条的值必须在你对数据的处理函数/过程中设置。比如你处理数据的函数/过程名叫aaa()
    sub aaa()
        处理一条数据
        进度条.value=数据处理进度
    end sub如果是下面这样就不对了
    sub form_load()
        aaa()
        进度条.value=数据处理进度 '这条语句只能执行一次
    end sub
      

  6.   

    上面的代码有问题,应该类似下面的情况比如你处理数据的函数/过程名叫aaa()
    sub aaa()
        while ??? '这里是你的循环条件
            处理一条数据
            进度条.value=数据处理进度
            form3.progressbar1.refresh '必要的时候刷新一下
        wend
    end sub
      

  7.   

    不可能呀.
    我主窗体代码如下:Private Sub MDIForm_Load()
        frmMain.Show
        
        Form1.Show 1End Subform1中有两个按钮:进度条(prog2)和socket控件(sockClient).
    form1窗体代码如下:
    Private Sub Form_Load()
        sockClient.RemoteHost = "192.168.1.1"
        sockClient.RemotePort = 40000
        sockClient.Connect
        
        While sockClient.State <> sckConnected
            If prog2.Value = prog2.Max Then
                prog2.Value = 0
            End If
            prog2.Value = prog2.Value + 1
        
            DoEvents
        WendEnd Sub
      

  8.   

    下面例子我刚测试过:
    Form1:Private Sub Command1_Click()
        Load Form2
    End SubForm2:
    Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)Private Sub Form_Load()
        Dim cnt  As Integer
        Dim i  As Integer
        
        Me.Show
        cnt = 100
        Me.ProgressBar1.Max = cnt
        i = 0
        Winsock1.Connect "127.0.0.1", 9000
        While i < cnt
            i = i + 1
            Me.ProgressBar1 = i
            Sleep 100
            DoEvents
        WendEnd Sub
      

  9.   

    caption="数据正在读取中……"
    读取……
    caption="读取完毕"
      

  10.   

    windcandle() ( ) 这位同志,我若点击其他地方,还是起作用,我想点击不起作用,
    直到处理完毕,自动退出。