VFP调用模式表单并接收返回值的方法与原则

虽然猫猫在文章中反复强调要做错误处理,很多人就是不听,还习惯性到处COPY代码,代码还不消化,到处乱用。

这样的程序表面上都正常,系统一大,肯定要完的。

表单异常错误处理

在猫框的开发范式中,第一原则要求的是错误处理,这里的错误是包含了(错误、异常)两种情况。也就是你的程序都要去考虑两条线,一条是正常执行,一条是发生了错误怎么办?见太多人的程序了,错误压根不处理。

表单LOAD和INIT事件中错误处理

我们一般在LOAD和INIT事件就要把要处理的数据都准备好,如果此时发生错误,比如网络中断,程序不应该继续往下执行了,就算表单完全打开了,也没有任何意义。

所以代码如下,在这里返回了一个.F.假,这样VFP的表单就不会再显示了。模式和非模式表单都可以这样写。

LOAD 事件 init 事件(非猫框)

if 有错误
   ?错误
   return .f.
endif

init事件 (猫框)

if 有错误
    ?错误
   this.Destroy()  &&释放所有自响应控件
   return .f.
endif 

如果是模式表单可以在Unload事件中返回值

return 123

模式表单取返回值规范调用方法

平常我们调用模式表单写法如下

Do form 模式表单 with 参数 to uReturn
?uReturn

如果模式表单在LOAD事件就Return .f. 这样情况会出现错误, uReturn 未定义

所以完整规范的写法如下

local uReturn
uReturn =.null.
Do form 模式表单 with 参数 to uReturn
if isnull(uReturn)
  return 
endif
?uReturn

这里就可以判定值是不是NULL,如果是NULL表示程序不往下执行了。

代码如果规范,就能从源码把错误给避免了,让您的程序更加稳定高效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

加菲猫的VFP

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值