Differenze tra le versioni di "Usare la ScrollView"
Riga 1: | Riga 1: | ||
La '''''ScrollView''''' è un "Contenitore", come una sorta di "Panel", la cui superficie può scorrere grazie alla presenza di due bande: verticale e orizzontale. E' possibile anche usare una sola banda scorrevole o nessuna. | La '''''ScrollView''''' è un "Contenitore", come una sorta di "Panel", la cui superficie può scorrere grazie alla presenza di due bande: verticale e orizzontale. E' possibile anche usare una sola banda scorrevole o nessuna. | ||
− | <BR>Per far mostrare le bande laterali, è necessario assegnare un valore opportuno alla Proprietà ".ScrollBar" della Classe "ScrollView". | + | <BR>Per far mostrare le bande laterali ("''Scrollbar'' "), è necessario assegnare un valore opportuno alla Proprietà ".ScrollBar" della Classe "ScrollView". |
− | + | ||
+ | ===Comportamento delle bande laterali scorrevoli quando la "ScrollView" contiene un solo Oggetto grafico=== | ||
+ | Se l'Oggetto grafico, contenuto nella "ScrollView" ha una dimensione eguale o inferiore (ossia entrambe le Proprietà ".W" e ".Y" inferiore a quelle della "ScrollView"), le bande laterali scorrevoli della "ScrollView" non saranno mostrate. | ||
<BR>Le bande laterali scorrevoli saranno mostrate, se il valore delle due predette Proprietà ".W" e ".Y" sono superiore a quelle della "ScrollView". | <BR>Le bande laterali scorrevoli saranno mostrate, se il valore delle due predette Proprietà ".W" e ".Y" sono superiore a quelle della "ScrollView". | ||
<BR>Mostriamo un esempio mediante una "PictureBox" avente dimensioni superiori alla "ScrollView" che le fa da ''Contenitore'' (ossia da Oggetto "''Padre'' "): | <BR>Mostriamo un esempio mediante una "PictureBox" avente dimensioni superiori alla "ScrollView" che le fa da ''Contenitore'' (ossia da Oggetto "''Padre'' "): | ||
Riga 38: | Riga 40: | ||
'''End''' | '''End''' | ||
Qualora, però, l'Oggetto, contenuto nella "ScrollView" - pur essendo di dimensioni inferiori alla "ScrollView" - sia posto a delle coordinate ".X" e ".Y" tali che esso debordi dalla superficie della "ScrollView", una o entrambe le bande laterali della "ScrollView" saranno mostrate. | Qualora, però, l'Oggetto, contenuto nella "ScrollView" - pur essendo di dimensioni inferiori alla "ScrollView" - sia posto a delle coordinate ".X" e ".Y" tali che esso debordi dalla superficie della "ScrollView", una o entrambe le bande laterali della "ScrollView" saranno mostrate. | ||
− | Private ScrollView1 As ScrollView | + | Private ScrollView1 As ScrollView |
+ | Private PictureBox1 As PictureBox | ||
+ | |||
+ | '''Public''' Sub Form_Open() | ||
+ | |||
+ | With Me | ||
+ | .W = Screen.AvailableWidth * 0.7 | ||
+ | .H = Screen.AvailableHeight * 0.8 | ||
+ | .Center | ||
+ | End With | ||
+ | With ScrollView1 = New ScrollView(Me) As "ScrollView1" | ||
+ | .W = Me.W * 0.5 | ||
+ | .H = Me.H * 0.5 | ||
+ | .X = (Me.W * 0.5) - (.W / 2) | ||
+ | .Y = (Me.H * 0.5) - (.H / 2) | ||
+ | .ScrollBar = Scroll.Both | ||
+ | End With | ||
+ | With PictureBox1 = New PictureBox(ScrollView1) | ||
+ | .X = <FONT Color=#B22222>300</font> | ||
+ | .Y = <FONT Color=#B22222>200</font> | ||
+ | .W = ScrollView1.W * <FONT Color=#B22222>0.5</font> | ||
+ | .H = ScrollView1.H * <FONT Color=#B22222>0.5</font> | ||
+ | .Border = Border.Plain | ||
+ | .Image = Image.Load("<FONT Color=gray>/percorso/del/file/immagine</font>") | ||
+ | End With | ||
+ | |||
+ | '''End''' | ||
+ | |||
+ | '''Public''' Sub ScrollView1_Scroll() | ||
+ | |||
+ | Me.Text = Cstr(ScrollView1.ScrollX) & " " & Cstr(ScrollView1.Scrolly) | ||
+ | |||
+ | '''End''' | ||
+ | ===Comportamento delle bande laterali scorrevoli quando la "ScrollView" contiene più Oggetti grafici=== | ||
+ | Nel caso in cui vi siano due o più oggetti grafici, contenuti nella "ScrollView", se gli Oggetti sono di dimensioni minori della "ScrollView", allora le bande laterali scorrevoli non appariranno. | ||
+ | <BR>Se anche solo un Oggetto, contenuto nella "ScrollView", deborda da uno o più lati della "ScrollView", allora le bande laterali scorrevoli appariranno. | ||
+ | Private ScrollView1 As ScrollView | ||
Private PictureBox1 As PictureBox | Private PictureBox1 As PictureBox | ||
+ | Private PictureBox2 As PictureBox | ||
'''Public''' Sub Form_Open() | '''Public''' Sub Form_Open() | ||
Riga 60: | Riga 99: | ||
.W = ScrollView1.W * <FONT Color=#B22222>0.5</font> | .W = ScrollView1.W * <FONT Color=#B22222>0.5</font> | ||
.H = ScrollView1.H * <FONT Color=#B22222>0.5</font> | .H = ScrollView1.H * <FONT Color=#B22222>0.5</font> | ||
+ | .Border = Border.Plain | ||
+ | .Image = Image.Load("<FONT Color=gray>/percorso/del/file/immagine</font>") | ||
+ | End With | ||
+ | With PictureBox2 = New PictureBox(ScrollView1) | ||
+ | .X = <FONT Color=#B22222>600</font> | ||
+ | .Y = <FONT Color=#B22222>300</font> | ||
+ | .W = ScrollView1.W * <FONT Color=#B22222>0.3</font> | ||
+ | .H = ScrollView1.H * <FONT Color=#B22222>0.3</font> | ||
.Border = Border.Plain | .Border = Border.Plain | ||
.Image = Image.Load("<FONT Color=gray>/percorso/del/file/immagine</font>") | .Image = Image.Load("<FONT Color=gray>/percorso/del/file/immagine</font>") | ||
Riga 71: | Riga 118: | ||
'''End''' | '''End''' | ||
− | + | Ovviamente le bande laterali scorrevoli appariranno anche se un Oggetto grafico, contenuto nella "GridView", sia di dimensioni superiori alla "GridView" medesima. | |
− | |||
− | |||
− | |||
− |
Versione delle 11:05, 11 ott 2021
La ScrollView è un "Contenitore", come una sorta di "Panel", la cui superficie può scorrere grazie alla presenza di due bande: verticale e orizzontale. E' possibile anche usare una sola banda scorrevole o nessuna.
Per far mostrare le bande laterali ("Scrollbar "), è necessario assegnare un valore opportuno alla Proprietà ".ScrollBar" della Classe "ScrollView".
Comportamento delle bande laterali scorrevoli quando la "ScrollView" contiene un solo Oggetto grafico
Se l'Oggetto grafico, contenuto nella "ScrollView" ha una dimensione eguale o inferiore (ossia entrambe le Proprietà ".W" e ".Y" inferiore a quelle della "ScrollView"), le bande laterali scorrevoli della "ScrollView" non saranno mostrate.
Le bande laterali scorrevoli saranno mostrate, se il valore delle due predette Proprietà ".W" e ".Y" sono superiore a quelle della "ScrollView".
Mostriamo un esempio mediante una "PictureBox" avente dimensioni superiori alla "ScrollView" che le fa da Contenitore (ossia da Oggetto "Padre "):
Private ScrollView1 As ScrollView Private PictureBox1 As PictureBox Public Sub Form_Open() With Me .W = Screen.AvailableWidth * 0.7 .H = Screen.AvailableHeight * 0.8 .Center End With With ScrollView1 = New ScrollView(Me) As "ScrollView1" .W = Me.W * 0.5 .H = Me.H * 0.5 .X = (Me.W * 0.5) - (.W / 2) .Y = (Me.H * 0.5) - (.H / 2) .ScrollBar = Scroll.Both End With With PictureBox1 = New PictureBox(ScrollView1) .X = 0 .Y = 0 .W = ScrollView1.W * 1.5 .H = ScrollView1.H * 1.5 .Border = Border.Plain .Image = Image.Load("/percorso/del/file/immagine") End With End Public Sub ScrollView1_Scroll() ' Questo Evento viene sollevato, quando si agisce sulle bande laterali scorrevoli Me.Text = Cstr(ScrollView1.ScrollX) & " " & Cstr(ScrollView1.Scrolly) End
Qualora, però, l'Oggetto, contenuto nella "ScrollView" - pur essendo di dimensioni inferiori alla "ScrollView" - sia posto a delle coordinate ".X" e ".Y" tali che esso debordi dalla superficie della "ScrollView", una o entrambe le bande laterali della "ScrollView" saranno mostrate.
Private ScrollView1 As ScrollView Private PictureBox1 As PictureBox Public Sub Form_Open() With Me .W = Screen.AvailableWidth * 0.7 .H = Screen.AvailableHeight * 0.8 .Center End With With ScrollView1 = New ScrollView(Me) As "ScrollView1" .W = Me.W * 0.5 .H = Me.H * 0.5 .X = (Me.W * 0.5) - (.W / 2) .Y = (Me.H * 0.5) - (.H / 2) .ScrollBar = Scroll.Both End With With PictureBox1 = New PictureBox(ScrollView1) .X = 300 .Y = 200 .W = ScrollView1.W * 0.5 .H = ScrollView1.H * 0.5 .Border = Border.Plain .Image = Image.Load("/percorso/del/file/immagine") End With End Public Sub ScrollView1_Scroll() Me.Text = Cstr(ScrollView1.ScrollX) & " " & Cstr(ScrollView1.Scrolly) End
Comportamento delle bande laterali scorrevoli quando la "ScrollView" contiene più Oggetti grafici
Nel caso in cui vi siano due o più oggetti grafici, contenuti nella "ScrollView", se gli Oggetti sono di dimensioni minori della "ScrollView", allora le bande laterali scorrevoli non appariranno.
Se anche solo un Oggetto, contenuto nella "ScrollView", deborda da uno o più lati della "ScrollView", allora le bande laterali scorrevoli appariranno.
Private ScrollView1 As ScrollView Private PictureBox1 As PictureBox Private PictureBox2 As PictureBox Public Sub Form_Open() With Me .W = Screen.AvailableWidth * 0.7 .H = Screen.AvailableHeight * 0.8 .Center End With With ScrollView1 = New ScrollView(Me) As "ScrollView1" .W = Me.W * 0.5 .H = Me.H * 0.5 .X = (Me.W * 0.5) - (.W / 2) .Y = (Me.H * 0.5) - (.H / 2) .ScrollBar = Scroll.Both End With With PictureBox1 = New PictureBox(ScrollView1) .X = 300 .Y = 200 .W = ScrollView1.W * 0.5 .H = ScrollView1.H * 0.5 .Border = Border.Plain .Image = Image.Load("/percorso/del/file/immagine") End With With PictureBox2 = New PictureBox(ScrollView1) .X = 600 .Y = 300 .W = ScrollView1.W * 0.3 .H = ScrollView1.H * 0.3 .Border = Border.Plain .Image = Image.Load("/percorso/del/file/immagine") End With End Public Sub ScrollView1_Scroll() Me.Text = Cstr(ScrollView1.ScrollX) & " " & Cstr(ScrollView1.Scrolly) End
Ovviamente le bande laterali scorrevoli appariranno anche se un Oggetto grafico, contenuto nella "GridView", sia di dimensioni superiori alla "GridView" medesima.