VB定义新窗体问题
来源:百度知道 编辑:UC知道 时间:2024/06/24 23:43:00
这是部分代码:
form1中:
Private Sub Timer1_Timer()
WebBrowser1.Width = Form1.ScaleWidth
WebBrowser1.Height = Form1.ScaleHeight - WebBrowser1.Top
End Sub
Private Sub WebBrowser1_NewWindow2(ppDisp As Object, Cancel As Boolean)
Dim frmWB As Form1
Set frmWB = New Form1
frmWB.WebBrowser1.RegisterAsBrowser = True
Set ppDisp = frmWB.WebBrowser1.Object
frmWB.Show
frmWB.Refresh
End Sub
问题:
这是我写的浏览器的一部分代码,目的是为了使webbrowser控件的大小能随form的大小而调节,为什么新定义的窗体frmwb里的webbrowser控件的大小不能随着frmwb的大小而调节呢??
程序哪里需要改正或是添加甚么,还望高手不吝赐教~~~
我开始就是用的RESIZE事件 不管用,我才换成的TIMER控件/.
form1中:
Private Sub Timer1_Timer()
WebBrowser1.Width = Form1.ScaleWidth
WebBrowser1.Height = Form1.ScaleHeight - WebBrowser1.Top
End Sub
Private Sub WebBrowser1_NewWindow2(ppDisp As Object, Cancel As Boolean)
Dim frmWB As Form1
Set frmWB = New Form1
frmWB.WebBrowser1.RegisterAsBrowser = True
Set ppDisp = frmWB.WebBrowser1.Object
frmWB.Show
frmWB.Refresh
End Sub
问题:
这是我写的浏览器的一部分代码,目的是为了使webbrowser控件的大小能随form的大小而调节,为什么新定义的窗体frmwb里的webbrowser控件的大小不能随着frmwb的大小而调节呢??
程序哪里需要改正或是添加甚么,还望高手不吝赐教~~~
我开始就是用的RESIZE事件 不管用,我才换成的TIMER控件/.
把timer控件里的代码改成这样就可以了,
Private Sub Timer1_Timer()
WebBrowser1.Width = Me.ScaleWidth
WebBrowser1.Height = Me.ScaleHeight - WebBrowser1.Top
End Sub
如果是你写的FORM1的话 代码执行的仅仅是FORM1.的窗口 ,而不是FRMWB的窗体..
所以换成ME.WIDTH 就可以了.
用RESIZE事件也可以..
Private Sub Form_Resize()
WebBrowser1.Width = Me.ScaleWidth
WebBrowser1.Height = Me.ScaleHeight - WebBrowser1.Top
End Sub
用Resize事件!肯定是可以的
Private Sub Form_Resize()
WebBrowser1.Width = Width
WebBrowser1.Height = Height - WebBrowser1.Top
End Sub