На форме имеется PictureBox (как контейнер), в нем OLE, связанный с excel, и две полосы прокрутки. При SizeMode=AutoSize OLE выходит за рамки формы. Как сделать прокрутку контейнера?
Попробовал так:
Private Sub Form_Load()
Me.ScaleMode = vbPixels
Me.Picture1.ScaleMode = vbPixels
Me.OLE1.SizeMode = 2
Me.Picture1.Move 0, 0, ScaleWidth - VScroll1.Width, ScaleHeight - HScroll1.Height
Me.OLE1.Move 0, 0
HScroll1.Top = Me.Picture1.Height
HScroll1.Left = 0
HScroll1.Width = Me.Picture1.Width
VScroll1.Top = 0
VScroll1.Left = Me.Picture1.Width
VScroll1.Height = Me.Picture1.Height
HScroll1.Max = Me.OLE1.Height - Me.Picture1.Width
VScroll1.Max = Me.OLE1.Height - Me.Picture1.Height
Me.VScroll1.Visible = True
Me.HScroll1.Visible = True
End Sub
Private Sub HScroll1_Change()
Me.OLE1.Left = -Me.HScroll1.Value
End Sub
Private Sub VScroll1_Change()
Me.OLE1.Top = -Me.VScroll1.Value
End Sub
но при запуске пропадают полосы прокрутки, так что даже проверить работу данного кода не смог. Что-то не так? Или вообще как-то это по другому делается?