Есть несколько концепций, которые вам нужно выяснить, чтобы сложить это вместе:
- Вам необходимо отслеживать объекты, которые вы собираетесь рисовать.Вы частично там, но обычно это делается с помощью некоторой коллекции вроде List (of ...)
- . Вам нужно обработать событие Paint вашего класса Form (или Panel или Control, или любого другого визуального объекта).Вы хотите нарисовать или включить)
- Вам нужно рисовать ваши объекты внутри вашего обработчика рисования
- Когда бы ни изменялось состояние вашего приложения, вам нужно вызывать Invalidate для объекта, который рисуется в"Force" свежий перекрас.
Вот небольшой фрагмент:
' suppose you have:
Private _myRects as New List(of Rectangle) ' populated elsewhere
' then you handle the paint event of a UI control
Private Sub Control_Paint(ByVal sender As Object, ByVal e As PaintEventArgs) _
Handles MyBase.Paint
Dim g As Graphics = e.Graphics
' loop through your collection drawing each rectangle:
for each rect As Rectangle in _myRects
g.FillRectangle(Brushes.Aqua, rect)
next for
...more drawing as needed
end sub
А вот довольно хороший учебник по рисованию .NET с VB.Если вы выполните его, у вас должны быть все элементы для создания любого вида 2D-рисования .NET, который вам нравится.(Веселье не начинается до страницы 2, но не пропускайте страницу 1!)