在显示对话框的后台,一定要有工作在做。是否那个工作也要是后台进行的啊?

解决方案 »

  1.   

    先搞个进度条,然后设置一个Timer控件,然后定期读取表示你工作的进度变量,
    显示出来就行了
    程序执行的时候,最好在循环或者需要的地方多加几个Doevents,这样你的程序就不会锁起来
      

  2.   

    wangjidh(背土蚂蚁)
    说得不错,vb本身对多线程支持很差,虽说有一些方法可以实现,但是很容易出错
      

  3.   

    1.插入进度条控件和滑动片控件的方法:在VB 5.0主选单的“工程”项中,选择“部件(0)”,在弹出的控件栏中,双击“Microsoft Windows Common Control 5.0”项,按“确定”键返回。那么在窗体工具箱中就有了上述控件。2.建立含有如下控件的窗体:控件 NAME CAPTION INTERVAL MAXFONT FORECOLOR 窗体 FORM1 用VB 5.0实现进度条动态显示进度条 PROGRESSBAR1 100滑动片 SLIDER1 100计时器 TIMER1 50 标签 LABEL1 宋体(小四)&H00FF0000&(蓝色) 标签 LABEL2 宋体(小四)&H00FF0000&(蓝色)命令按钮 COMMAND1 退 出 3.输入计时器的程序代码:   Private Sub Timer1_Timer()   Static count As Integer   count = count + 1   Label1.Caption = Str$(count) + ″%″ ′进度条显示百分比   Label2.Caption = Str$(count) + ″%″ ′滑动片显示百分比   If count = 100 Then   count = 0   Else   ProgressBar1.Value = count   Slider1.Value = count   End If   End Sub4.输入退出按钮的程序代码:   Private Sub Command1_Click()   End   End Sub