private sub command1_click() '調用事件 dim l_str as string l_str = "z " getnextstring l_str '此調用不能返回正確的值. ' call getnextstring(l_str) '此調用能返回正確的值. msgbox l_str '輸出 "z "
end sub
private function getnextstring(byref p_strvalue as string) as boolean
p_strvalue = "0 "
end function
发表于:2007-01-12 12:20:392楼 得分:5
private sub command1_click() dim l_str as string l_str = "z " getnextstring l_str '这里不用加括号 msgbox l_str '輸出 "0 " end sub
private function getnextstring(byref p_strvalue as string) as boolean p_strvalue = "0 " end function
发表于:2007-01-12 12:46:433楼 得分:5
'下面的程序也正常, private sub command1_click() '調用事件 dim tt as boolean dim l_str as string l_str = "z " tt = getnextstring(l_str) '此調用不能返回正確的值. msgbox l_str '輸出 "z " end sub
private function getnextstring(byref p_strvalue as string) as boolean p_strvalue = "0 " end function
getnextstring 首先要确定你这个函数的返回值的类型 一般boolean型,直接可以调用,不需call 其它类型:先定义一个变量(与函数返回值类型相同) for ex: dim str_aa as string=string.empty private function getnextstring ( byval str_test as string) as string
' 调用 microsoft windows dll 过程。该声明语句必需是类模块中的私有的,而不是标准模块中的。 private declare sub messagebeep lib "user " (byval n as integer) sub callmydll() call messagebeep(0) ' 调用 windows dll 过程。 messagebeep 0 ' 再次调用,但不用“调用”这个关键字。 end sub