Привет всем! Ребят вот возник вопрос у меня:
значит есть структура:
Structure струнка
Dim lad
Dim oldlad
Dim clicks
Dim струна
Dim font As Font
Public граф_для_струнки As Graphics
Sub update()
Dim stx = 13 + ((струна - 1) * 40)
If Not lad = oldlad Then
граф_для_струнки.Clear(Color.White)
граф_для_струнки.FillEllipse(Brushes.DarkGray, stx, (lad * 40) + 11, 15, 15)
граф_для_струнки.DrawEllipse(Pens.Black, stx, (lad * 40) + 11, 15, 15)
граф_для_струнки.DrawString(clicks, font, Brushes.White, stx + 2, (lad * 40) + 13)
oldlad = lad
Else
граф_для_струнки.FillEllipse(Brushes.DarkGray, stx, (lad * 40) + 11, 15, 15)
граф_для_струнки.DrawEllipse(Pens.Black, stx, (lad * 40) + 11, 15, 15)
граф_для_струнки.DrawString(clicks, font, Brushes.White, stx + 2, (lad * 40) + 13)
oldlad = lad
clicks += 1
End If
If clicks > 6 Then
граф_для_струнки.Clear(Color.White)
clicks = 1
End If
End Sub
End Structure
вобщем ,мягко говоря это структура струны, в который храняться параметры к ней и фукция обновления ,которая в свою очередь рисует кружочек с номером. Всё бы очень даже отлично, Но! Иницилизирую примерно так:
струна1.граф_для_струнки = Me.CreateGraphics
струна1.lad = 0
струна1.clicks = 1
струна1.струна = 1
струна1.oldlad = 0
струна1.font = Me.Font
вот, получаеться ,что если мы нажмём на другой аккорд ,не равный предыдущему, то он должен стерень кружочек и нарисовать новый ,по новым координатам. Но он стирает с формы всё, учитывая то ,что каждый граф,для каждой струны, ему пофиг,он очищает всё.Грешу я на это:
струна1.граф_для_струнки = Me.CreateGraphics
потому что, они все рисуеться на одной форме, так же как и сеточка, но нарисовать заного сеточку проблемы нет,а вот нарисовать заного круглешки у других струн ,как-то не очень правильно,да и в добавок должно быть более нормальное решение.Какие есть размышления по этому поводу?
Ответить
|