Differenze tra le versioni di "Disegnare in una DrawingArea più punti con il mouse"
Da Gambas-it.org - Wikipedia.
Riga 1: | Riga 1: | ||
− | Per disegnare su una ''DrawingArea'' con il mouse due o più punti in modo tale che, i punti precedentemente disegnati, restino visibili sulla ''DrawingArea'' ad ogni disegno di un nuovo punto, potremo adottare un codice come il seguente: | + | Per disegnare su una ''DrawingArea'' con il mouse due o più punti <SUP>[[[#Note|Nota 1]]&093;</sup> in modo tale che, i punti precedentemente disegnati, restino visibili sulla ''DrawingArea'' ad ogni disegno di un nuovo punto, potremo adottare un codice come il seguente: |
− | Private StartX As | + | Private StartX As Short |
− | Private StartY As | + | Private StartY As Short |
− | Private punti As New | + | Private punti As New Short[] |
Riga 10: | Riga 10: | ||
With Paint | With Paint | ||
+ | .Brush = .Color(Color.Red) | ||
For i = 0 To punti.Max Step 2 | For i = 0 To punti.Max Step 2 | ||
− | . | + | .Arc(punti[i], punti[i + 1], 1.5, Rad(0), Rad(360), False) |
+ | .Fill | ||
Next | Next | ||
.End | .End | ||
Riga 35: | Riga 37: | ||
'''End''' | '''End''' | ||
+ | |||
+ | |||
+ | |||
+ | =Note= | ||
+ | [1] Per conoscere le modalità di disegno di un punto su una ''DrawingArea'', vedere questa pagina della wiki: | ||
+ | <BR>https://www.gambas-it.org/wiki/index.php?title=Disegnare_un_punto_su_una_DrawingArea_con_la_Classe_%22Paint%22 |
Versione delle 11:55, 4 apr 2021
Per disegnare su una DrawingArea con il mouse due o più punti [Nota 1&093; in modo tale che, i punti precedentemente disegnati, restino visibili sulla DrawingArea ad ogni disegno di un nuovo punto, potremo adottare un codice come il seguente:
Private StartX As Short Private StartY As Short Private punti As New Short[] Public Sub DrawingArea1_Draw() Dim i As Integer With Paint .Brush = .Color(Color.Red) For i = 0 To punti.Max Step 2 .Arc(punti[i], punti[i + 1], 1.5, Rad(0), Rad(360), False) .Fill Next .End End With End Public Sub DrawingArea1_MouseDown() StartX = Mouse.X StartY = Mouse.Y End Public Sub DrawingArea1_MouseUp() punti.Add(StartX) punti.Add(StartY) DrawingArea1.Refresh() End
Note
[1] Per conoscere le modalità di disegno di un punto su una DrawingArea, vedere questa pagina della wiki:
https://www.gambas-it.org/wiki/index.php?title=Disegnare_un_punto_su_una_DrawingArea_con_la_Classe_%22Paint%22