Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования стр.43
Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования стр.43

В заготовку процедуры Timerl_Tick впишите код Me. Refresh. Метод Refresh осуществляет перерисовку, а оператор Me предоставляет ссылку на класс, внутри которого она используется. Этот принцип программирования можно задействовать для любых изменений графических объектов. Можно, в частности, придать значения переменных всем параметрам, а не только одному, как это сделано в приведенном выше примере. Вместо таймера вполне подойдет циклическая программа, а для управления циклом можно использовать условный оператор. Словом, способов составления кодов достаточно много, но следует помнить, что чем программа проще и понятнее, тем она лучше.

Рассмотрим еще один пример. Используем тот же многоугольник, но теперь заменим все его координаты переменными. При этом необязательно объявлять переменную для каждого параметра. Их будет всего две: х и у. Добавляя или вычитая

Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования

Динамика графических объектов

числовые значения первоначально заданных координат, можно получить нужные величины. Для удобства присвоим переменным значение 0 (ноль). Кстати, это указывать необязательно, поскольку по умолчанию переменные и так будут равны нулю. Код будет выглядеть следующим образом:

Dim graf As Graphics = e.Graphics

Dim pen As Pen = New Pen(Color.Brown, 3)

Static x As Integer = 0

Static у As Integer = 0

x = x + 1

у = у + 1

Dim point() As Point = {New Point(x + 100, у + 20), _ New Point(x + 200, у + 20), New Point(x + 150, _ у + 120), New Point(x + 50, у + 120)} graf.DrawPolygon(pen, point)

В результате равномерного изменения горизонтальных и вертикальных координат всех точек объект движется по диагонали. Но, изменяя координаты точек массива, по которым строится многоугольник, мы вынуждены создавать действительно громоздкий код. Не случайно в нашем примере использован многоугольник. Дело в том, что данная геометрическая фигура строится с помощью массива точек. С этим массивом можно производить различные преобразования.

В примере массив point () состоит из четырех элементов, значения которых -координаты четырех точек. Значение каждого элемента массива (его горизонтальную координату) можно определить так: написать имя массива, указать его индекс, который соответствует очередности записи элемента в коде, а затем поставить точку. После этого появится меню со списком возможных значений элемента массива. Нас интересует значение х (горизонтальная координата). Дважды щелкаем эту строку - и код готов. Для первого элемента массива выглядит он так: point (0) .X. По отдельности работать с элементами массива необходимо только тогда, когда надо присвоить разные значения каждому из них. Например, если изменяется форма геометрической фигуры. Но если всем элементам присваивается одно значение, как это бывает при перемещении рисунка, без изменения его вида, лучше работать с массивом в целом. В следующем примере мы изменяем горизонтальную координату всего массива.


⇐ Предыдущая Следующая ⇒
 
 
 
Powered by Exponenta