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

Public Class Classl

Sub rect(ByVal e As PaintEventArgs)

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

Наследование

е.Graphics.DrawRectangle(New Pen(Color.Red, 3), 50, 50, 100, 100) End Sub End Class

Теперь создадим наследуемый класс с именем Class2. В него добавим код, рисующий эллипс. Таким образом, программа, созданная в новом классе, должна рисовать четырехугольник и эллипс.

Public Class Class2 Inherits Classl

Sub elip(ByVal e As PaintEventArgs)

e.Graphics.DrawEllipse(New Pen(Color.Green, 3), 50, 170, 100-, 100) End Sub End Class

А так выглядят сопутствующие коды созданные в файле формы:

Private Sub Forml_Paint(ByVal sender As Object, _

ByVal e As System.Windows.Forms.PaintEventArgs) _

Handles MyBase.Paint

Dim ell As New Class2

ell.rect(e)

ell.elip(e)

End Sub

Тут следует кое-что пояснить. Обратите внимание, что создан только экземпляр класса Class2. Несмотря на то, что в процедуре Form_Paint класс Classl вообще не упоминается, во всплывающей подсказке можно увидеть имя метода rect, который относится к классу Classl. Это объясняется тем, что класс С las s 2 полностью унаследовал все содержимое класса Classl. Убедится в этом достаточно легко. Поставьте знак комментария против строки Inherits Classl. В результате класс Class2 потеряет свойства унаследованного класса, а метод rect исчезнет из списка всплывающей подсказки.

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

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

ГЛАВА 14 ▼ Создание графики методами ООП

Рассмотрим простой пример. Дополним файл класса С lass 2 следующими кодами:

Sub notpad(ByVal u As System.Diagnostics.Process) u.Start(«notepad.exe») MsgBox(«перегрузка») End Sub

Этот код вызывает текстовый редактор NotePad и диалоговое окно MsgBox. А теперь поместим на форму кнопку Button и добавим в процедуру обработки события Buttonl_Click такой код:


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