Differenze tra le versioni di "Disegnare in una DrawingArea più linee con il mouse"
Da Gambas-it.org - Wikipedia.
Riga 11: | Riga 11: | ||
Dim i As Integer | Dim i As Integer | ||
− | With Draw | + | With Draw |
+ | .Foreground = Color.Red | ||
.Line(StartX, StartY, OldX, OldY) | .Line(StartX, StartY, OldX, OldY) | ||
For i = 0 To punti.Count - 1 Step 4 | For i = 0 To punti.Count - 1 Step 4 |
Versione delle 04:57, 25 mag 2015
Per disegnare su una DrawingArea con il mouse due o più linee in modo tale che, le linee precedentemente disegnate, restino visibili sulla DrawingArea ad ogni disegno di una nuova linea, potremo adottare un codice come il seguente: |1|
Private OldX As Single Private OldY As Single Private StartX As Single Private StartY As Single Private punti As New Integer[] Public Sub DrawingArea1_Draw() Dim i As Integer With Draw .Foreground = Color.Red .Line(StartX, StartY, OldX, OldY) For i = 0 To punti.Count - 1 Step 4 .Line(punti[i], punti[i + 1], punti[i + 2], punti[i + 3]) Next .End End With End Public Sub DrawingArea1_MouseDown() StartX = Mouse.X StartY = Mouse.Y OldX = StartX OldY = StartY End Public Sub DrawingArea1_MouseMove() OldX = Mouse.X OldY = Mouse.Y DrawingArea1.Refresh() End Public Sub DrawingArea1_MouseUp() punti.Add(StartX) punti.Add(StartY) punti.Add(OldX) punti.Add(OldY) End
Note
[1] Il codice è stato realizzato dall'utente Gianluigi del forum gambas-it.org .