Salve a tutti !!
ho un piccolo problema:
Devo fare un form scorrevole,cioè un form con le barre di scorrimento sia orizzontali che verticali.Ho trovato questo codice su un libro ma non va!
codice:
Private Sub Form_Resize()
'Ridimensiona le scrollbar lungo il form
HScroll1.Move 0, ScaleHeight - SB_HEIGHT, ScaleWidth - SB_WIDTH
VScroll1.Move ScaleWidth - SB_WIDTH, 0, SB_WIDTH, ScaleHeight - SB_HEIGHT
cmdfiller.Move ScaleWidth - SB_WIDTH, ScaleHeight - SB_HEIGHT, SB_WIDTH, SB_HEIGHT
'Mette questi controlli davanti agli altri
HScroll1.ZOrder
VScroll1.ZOrder
cmdfiller.ZOrder
piccanvas.BorderStyle = 0
'Un clic sulle frecce sposta di un pixel
HScroll1.SmallChange = ScaleX(1, vbPixels, vbTwips)
VScroll1.SmallChange = ScaleY(1, vbPixels, vbTwips)
'Un clic sulla barra sposta di 16 pixel
HScroll1.LargeChange = HScroll1.SmallChange * 16
VScroll1.LargeChange = VScroll1.SmallChange * 16
'Se il form è più largo di piccanvas,non è necessario mostrare la scrollbar corrispondente
If ScaleWidth < piccanvas.Width + SB_WIDTH Then
HScroll1.Visible = True
HScroll1.Max = piccanvas.Width + SB_WIDTH - ScaleWidth
Else
HScroll1.Value = 0
HScroll1.Visible = False
End If
If ScaleHeight < piccanvas.Height + SB_HEIGHT Then
VScroll1.Visible = True
VScroll1.Max = piccanvas.Height + SB_HEIGHT - ScaleHeight
Else
VScroll1.Value = 0
VScroll1.Visible = False
End If
'Rendi visibile il controllo di riempimento solo se necessario
cmdfiller.Visible = (HScroll1.Visible Or VScroll1.Visible)
MoveCanvas
End Sub
Sub MoveCanvas()
piccanvas.Move (-HScroll1.Value), (-VScroll1.Value)
End Sub
Dove'è il problema?piccanvas è un picturebox che contiene tutti i controlli del form.
Se ci sono altre soluzioni fatemi sapere!
ciao e grazie a tutti