vb中如何让webbrowser控件大小随窗体变化?
最大化窗体后webbrowser控件仍然是原始大小。 --------------------编程问答-------------------- --------------------编程问答--------------------Option Explicit
'*************************************************************************
'**模 块 名:ModAutoSize
'**说 明:自动调整窗体控件大小及位置
'**创 建 人:马大哈 紫水晶工作室 版权所有
'**日 期:2003年12月17日
'**备 注: 摘于网络
'**版 本:V1.0
'*************************************************************************
'' 在Form_Load里面调用:
'' ControlAutoSize Me,0
'' 在Form_Resize里面调用:
'' ControlAutoSize Me,1
''**********************************
Private Type cP
Wp As Single
Hp As Single
Tp As Single
Lp As Single
End Type
Dim Ap() As cP
Private Sub Ai(ByRef mForm As Form)
On Error Resume Next
Dim I As Integer
For I = 0 To mForm.Controls.Count - 1
With Ap(I)
.Wp = mForm.Controls(I).Width / mForm.Width
.Hp = mForm.Controls(I).Height / mForm.Height
.Lp = mForm.Controls(I).Left / mForm.Width
.Tp = mForm.Controls(I).Top / mForm.Height
End With
Next I
End Sub
Public Function ControlAutoSize(ByRef mForm As Form, ByVal OptIndex As Long)
Select Case OptIndex
Case 0
mForm.Height = mForm.ScaleHeight
ReDim Ap(0 To mForm.Controls.Count - 1)
Call Ai(mForm)
Case Else
Dim I As Integer
On Error Resume Next
With mForm
For I = 0 To .Controls.Count - 1
.Controls(I).Move Ap(I).Lp * .ScaleWidth, _
Ap(I).Tp * .ScaleHeight, _
Ap(I).Wp * .ScaleWidth, _
Ap(I).Hp * .ScaleHeight
Next I
End With
End Select
End Function
注意错误处理. --------------------编程问答-------------------- 还有办法
窗体最大化会触发窗体的_Resize 事件
在这个事件下 webbrowser 可根据 窗体的大小 进行调整
比如
webbrowser.top = me.top -200
webbrowser.left = me.left - 200
webbrowser.width = me.width - 400
webbrowser.height = me.height --------------------编程问答-------------------- 谢谢了,超级实用,好用。 --------------------编程问答-------------------- 我一般都是用 webbrowser1.move 0,0,me.scalewidth,me.scaleheight
补充:VB , 控件