想要在DLL中实现对传入的Form的所有的控件的大小进行调整,所以在DLL中写了如下这样的函数:
Public Sub GetControlObject(ByRef obj As Form)
Dim objOnFormControl As Control
For Each objOnFormControl In obj.Controls
objOnFormControl.Width = 10
Next
End Sub
想要在DLL中实现对传入的Form的所有的控件的大小进行调整,所以在DLL中写了如下这样的函数: Public Sub GetControlObject(ByRef obj As Form) Dim objOnFormControl As Control For Each objOnFormControl In obj.Controls objOnFormControl.Width = 10 Next End Sub 但是,编译不通过,提示Form不能作为public的函数的参数传递,请问如何将
DLL中的函数:
Public Sub ResizeControlObject(obj As Object)
Dim objOnFormControl As Control
For Each objOnFormControl In obj.Controls
objOnFormControl.Width = 10
Next
End Sub
窗体中的调用:
Option Explicit
Public AddSub As AddClass
Private Sub Command1_Click()
Set AddSub = New AddClass
AddSub.ResizeControlObject (Form1)
End Sub
运行后,产生这样的错误:
Run-time error '438':
Object doesn't support this property or method
Option Explicit
Public AddSub As AddClass
Private Sub Command1_Click()
Dim frm as form
set frm = form1
Set AddSub = New AddClass
AddSub.ResizeControlObject (frm)
End Sub