当前位置:编程学习 > VB >>

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 ,  控件
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,