帮小弟我看看下面那些RETURN是什么意思

帮我看看下面那些RETURN是什么意思
下面是一个按钮的CLICK事件,很长,你可能看晕,我只想知道那些RETURN后面有数值的,请问什么意思?


Long li_count, ll_Row, li_return
String ls_Find, ls_join, ls_char, ls_return,ls_leftlen,ls_rightlen
string ls_colname, ls_coltype, ls_numeoper, ls_dateoper, ls_charoper
date ldt_date
double ld_num

for ll_row = dw_criteria.rowcount() to 2 step -1
ls_colname = dw_criteria.object.column_name[ll_row]
if ls_colname = '' or isnull(ls_colname) then dw_criteria.deleterow(ll_row)
next

ls_return = '('
li_count = dw_criteria.RowCount()
For ll_Row = 1 To li_count
ls_leftlen = ls_leftlen + trim(dw_criteria.object.left_bracket[ll_row])
ls_rightlen = ls_rightlen + trim(dw_criteria.object.right_bracket[ll_row])
next 
if len(ls_leftlen) <> len(ls_rightlen) then
messagebox('信息','左右括号不匹配!!!')
return -1
end if

For ll_Row = 1 To li_count
ls_colname = dw_criteria.object.column_name[ll_row]
if ls_colname = '' or isnull(ls_colname) then
messagebox('信息','第 ' + string(ll_row) + ' 行没有输入列名!')
return -1
end if

ls_coltype = dw_criteria.object.column_datatype[ll_row]
ls_return = ls_return + dw_criteria.object.left_bracket[ll_row]

CHOOSE CASE left(ls_coltype,4)
CASE 'date'
ls_dateoper = dw_criteria.object.datetime_operators[ll_row]
ldt_date = date(dw_criteria.object.datetime_value[ll_row])
dw_criteria.object.datetime_value[ll_row] = datetime(ldt_date)
if ls_dateoper = 'ISNULL' THEN
ls_return = ls_return + ' ( ' + ls_colname + ' IS NULL ) '
elseif ls_dateoper = 'NOT ISNULL' then
ls_return = ls_return + ' ( ' + ls_colname + ' IS NOT NULL ) '
else
if isnull(ldt_date) then
messagebox('信息','第 ' + string(ll_row) + ' 行日期型数据为空值!')
return -1
end if
if pos(upper(sqlca.dbms),'ORACLE') > 0 then //ORACLE
ls_return = ls_return +' to_char(' + ls_colname + ',"yyyy-mm-dd") ' + ls_dateoper + " '" + string(ldt_date,"yyyy-mm-dd")+"' "
elseif pos(upper(sqlca.dbms),'MICROSOFT SQL SERVER') > 0 then//SQL SERVER
ls_return = ls_return +' convert(char,' + ls_colname + ',112) ' + ls_dateoper + " '" + string(ldt_date,"yyyymmdd")+"' "
else
//CANCEL
end if
end if

CASE 'deci','numb'
ls_numeoper = dw_criteria.object.numeric_operators[ll_row]
ld_num = dw_criteria.object.num_value[ll_row]
if ls_numeoper = 'ISNULL' THEN
ls_return = ls_return + ' ( ' + ls_colname + ' IS NULL ) '
elseif ls_numeoper = 'NOT ISNULL' then
ls_return = ls_return + ' ( ' + ls_colname + ' IS NOT NULL ) '
else
if isnull(ld_num) then
messagebox('信息','第 ' + string(ll_row) + ' 行数值型数据为空值!')
return -1
end if
ls_return = ls_return + ls_colname + ' ' + ls_numeoper + ' ' + string(ld_num)
end if

CASE 'char'
ls_charoper = dw_criteria.object.string_operators[ll_row]
ls_char = dw_criteria.object.string_value[ll_row]
if ls_charoper = 'ISNULL' THEN
ls_return = ls_return + ' ( ' + ls_colname + ' IS NULL ) '
elseif ls_charoper = 'NOT ISNULL' then
ls_return = ls_return + ' ( ' + ls_colname + ' IS NOT NULL ) '
else
if ls_char = '' or isnull(ls_char) then
messagebox('信息','第 ' + string(ll_row) + ' 行字符型数据为空值!')
return -1
end if
li_return = wf_judgechar(ls_char,ls_charoper)
if li_return = -1 then
messagebox('信息','第 ' + string(ll_row) + ' 行字符型数据非法!')
return -1
end if
ls_return = ls_return + ls_colname + ' ' + ls_charoper + ' ' + ls_char
end if
END CHOOSE
if ll_row = li_count then
ls_return = ls_return + dw_criteria.object.right_bracket[ll_row]
else
ls_return = ls_return + dw_criteria.object.right_bracket[ll_row] + dw_criteria.object.join_operator[ll_row]
end if
next

ls_return = trim(ls_return) + ')'

if pos(is_left,'WHERE') =0 then
ls_return = is_left + " WHERE " + ls_return + ' ' + is_right 
else
ls_return = is_left + " AND " + ls_return + ' ' + is_right 
end if

mle_1.text = ls_return
is_return = ls_return
cb_find.enabled = true

return 0

------解决方案--------------------
返回参数值.
------解决方案--------------------
探讨

为什么按钮的CLICKED事件会返回参数值的?又不是 function

------解决方案--------------------
此處也可以理解為中斷執行的意思,return -1,或return 其它值沒有什麼區別。
------解决方案--------------------
Return value 

Long. Return code choices (specify in a RETURN statement):

0 Continue processing

默认为返回0

如果你想让他返回-1等,主要是为了在代码中去判断执行结果

例如:if cb_1.event clicked()=-1 then messagebox('','未能执行成功')
------解决方案--------------------
探讨
Return value

Long. Return code choices (specify in a RETURN statement):

0 Continue processing

默认为返回0

如果你想让他返回-1等,主要是为了在代码中去判断执行结果

例如:if cb_1.event clicked()=-1 then messagebox('','未能执行……