VFP最多26个参数,你写满不为止
Procedure runform
Parameters cformname,mformname,Parameter1,Parameter2,Parameter3,Parameter4,Parameter5,Parameter6,Parameter7,Parameter8,Parameter9,Parameter10
For nCount=10 To 1 STEP -1
cName=“Parameter”+Alltrim(Str(nCount))
IF VARTYPE(&cName)“L” AND &cName.f.
else
EXIT
ENDIF
ENDFOR
*–创建参数
LOCAL strPara
strPara=""
FOR nPcount=1 TO nCount
cName=“Parameter”+Alltrim(Str(nPcount))
strPara =strPara +","+ cName
ENDFOR
strPara= RIGHT(strPara,LEN(strPara)-1)
cpublic = “Public “+mformname
&cpublic
If !(Type(”&mFormName.”)=“O” And !Isnull(&mformname.))
lccmd=“Do Form &cformname Name &mformname”
lcCmd = lcCmd + IIF(EMPTY(strPara),""," WITH "+strPara )
&lccmd
Else
If &mformname…WindowState=1
&mformname…WindowState=0
Endif
&mformname…Show
Endif
Endproc
调用方法
runform(表单文件名,表单定义变量,参数1,[-参数10])
不带参数
runform(“表单2”,“表单2”)
带参数运行(支持10个参数)
runform(“表单2”,“表单2”,“123”,“456”,“12345”)
更多资料http://www.sn58.cn