我有一个函数,从网上下的
是一个按比例调节窗体中各控件位置和大小的函数。
他的声明是:
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
是一个按比例调节窗体中各控件位置和大小的函数。
他的声明是:
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
解决方案 »
- 请教下VB2008用ODBC API连接ORACLE11G的问题
- 用winsock向http服务器post数据后,应该如何分析数据包?找到相应的关键字并保存?
- 控件WindowsMediaPlayer如何用?
- DataGrid读取数据出问题了,大家帮忙看看
- 为什么加载窗体的时候不显示图片,而点按钮时有能将图片显示出来?
- 如何用代码将MSHFlexGrid的指定行自动滚动到最顶行?
- 现在MSDN2003包含原来2001 VB的内容吗?
- 求VB反编译软件,各位高手帮帮忙啊!!!
- 请问斑竹,如何删除帖子?
- 三层结构中的com 开发问题。在线等待
- 是不是都转到vb.net了?
- 记录集怎么是空的呢?在线等
Dim MyForm As FormSet MyForm= MeCall ResizeForm(MyForm)