我有一个函数,从网上下的
是一个按比例调节窗体中各控件位置和大小的函数。
他的声明是:
Public Sub ResizeForm(FormName As Form)我无论用
ResizeForm(Me)
还是ResizeForm(我的窗体名)
都说是类型匹配错误?这个问题怎么解决? 他的函数体是这样的Public Sub ResizeForm(FormName As Form)
  Dim Pos(4) As Double
  Dim i As Long, TempPos As Long, StartPos As Long
  Dim Obj As Control
  Dim ScaleX As Double, ScaleY As Double
  '在调试时如果出现除数为零错误,是因为没有设定form的初值,请双击form1然后再测试,这个问题绝对不会在编译好的程序中出现
  If FormOldWidth = 0 Then '防止该错误的产生
    Exit Sub
  End If
  ScaleX = FormName.ScaleWidth / FormOldWidth   '保存窗体宽度缩放比例
  ScaleY = FormName.ScaleHeight / FormOldHeight '保存窗体高度缩放比例
  On Error Resume Next
  For Each Obj In FormName
    StartPos = 1
  For i = 0 To 4
    '读取控件的原始位置与大小
    TempPos = InStr(StartPos, Obj.Tag, " ", vbTextCompare)
    If TempPos > 0 Then
      Pos(i) = Mid(Obj.Tag, StartPos, TempPos - StartPos)
      StartPos = TempPos + 1
    Else
      Pos(i) = 0
    End If
    '根据控件的原始位置及窗体改变大小
    '的比例对控件重新定位与改变大小
    Obj.Move Pos(0) * ScaleX, Pos(1) * ScaleY, Pos(2) * ScaleX, Pos(3) * ScaleY
  Next i
  Next Obj
  On Error GoTo 0
End Sub