以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于学习动态代码中的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=143898)

--  作者:weipeng6999
--  发布时间:2019/12/6 9:54:00
--  关于学习动态代码中的问题

老师好!

 

     正在学习帖子上 的动态代码,有段编译函数的代码能不能请老师注释下,有点迷糊不懂!特别是标红部分,谢谢!

 

Dim code As String
code= " dim name as string = args(0) " & vbcrlf
code= code & " Select Case name " & vbcrlf
For Each dr As DataRow In DataTables("导航").DataRows
    If dr("代码")> ""  Then
        code = code & " case " & """" & dr("名称") & """" & vbcrlf
        code = code & dr("代码")  & vbcrlf
    End If
Next
code= code & "end  Select  " & vbcrlf
Functions.Remove("nav")
Functions.Add("nav",Code)
Functions.Complie

[此贴子已经被作者于2019/12/6 9:56:20编辑过]

--  作者:有点蓝
--  发布时间:2019/12/6 9:57:00
--  
Dim code As String
code= " dim name as string = args(0) " & vbcrlf
code= code & " Select Case name " & vbcrlf
For Each dr As DataRow In DataTables("导航").DataRows
    If dr("代码")> ""  Then
        code = code & " case " & """" & dr("名称") & """" & vbcrlf
        code = code & dr("代码")  & vbcrlf
    End If
Next
code= code & "end  Select  " & vbcrlf
上面这一段都是为了把需要执行的代码合并为一个字符串
Functions.Remove("nav") ‘移除已经添加的同名函数
Functions.Add("nav",Code) ‘动态添加一个函数,名称为nav,代码体就是上面合并的字符串
Functions.Complie ‘编译这个函数,编译后就可以调用这个函数了