BeforeClose

在关闭窗口前执行。

e参数属性:

Form:       表示要关闭的窗口
Cancel:     逻辑型,设为True,将禁止关闭窗口。
CloseMode:  整数型,如果是通过Form的Close方法关闭窗口,则返回1,否则返回0。

如果任何时候Cancel参数都返回True的话,那么窗口将永远不能关闭,直到强行中止进程,所以在代码中使用Cancel参数的时候,一定要慎重。

示例

请在窗口中加入两个DateTimePicker(日期输入框),分别命名为StartDate和EndDate。
然后将BeforeClose事件代码设为:

Dim sd As WinForm.DateTimePicker
Dim
ed As WinForm.DateTimePicker
sd = e.Form.Controls(
"StartDate")
ed = e.Form.Controls(
"EndDate")
If
sd.Value Is Nothing OrElse ed.Value Is Nothing Then
    MessageBox.Show(
"请输入起始日期和终止日期!","提示", MessageBoxButtons.OK ,MessageBoxIcon.Information)
    e.Cancel =
True
End
If

假定两个日期输入框分别绑定到两个var变量:StartDate和EndDate,那么上述代码可以简化为:

If Vars("StartDate") Is Nothing OrElse Vars("EndDate") Is Nothing Then
    MessageBox.Show(
"请输入起始日期和终止日期!","提示", MessageBoxButtons.OK ,MessageBoxIcon.Information)
    e.Cancel =
True
End
If


本页地址:http://www.foxtable.com/webhelp/topics/0712.htm