版主老师,我在功能区设置了一个“”数据备份“”的按钮,按钮的Click事件为打开进度窗口,点击这个按钮后弹出数据备份进度的窗口,窗口中有一个显示备份进度的进度条和文字,窗口的AfterLoad事件代码为:
e.Form.Controls("Label1").Text = "正在进行备份,请稍后..."
Application.DoEvents()
Dim p As WinForm.ProgressBar
p = e.Form.Controls("ProgressBar1")
p.Maximum = DataTables.Count
'设置最大值
p.Minimum = 0 '设置最小值
p.Value = 0 '设置当前值
Dim t As String
Dim i As Integer = 0
Dim cs As String
cs=Format(Date.Now, "yyyyMMddHHmmss")
For Each dt As DataTable In DataTables
Dim ex As New Exporter
ex.FilePath = ProjectPath & "Backup\" & cs & ".mdb"
ex.SourceTableName = dt.Name
i= i + 1
p.value=i
t = dt.LoadFilter
If t <> "" Then
dt.LoadFilter= ""
dt.load
ex.Export()
dt.LoadFilter = t
dt.load
Else
ex.Export()
End If
Next
e.Form.Controls("Label1").Text = "备份完成"
e.Form.Controls("Label3").Text = " 文件名:" & cs & ".mdb"
这个代码能实现自动备份,但是问题是,当我点击“数据备份”按钮之后,并没有弹出这个显示进度的窗口,但是数据备份工作已经开始了,当备份完了,这个窗口才弹出来,这是怎么回事?
如何修改让点击“数据备份”这个按钮之后,这个进度窗口就立即显示出来?