ПОНЯТНО О Visual Basic NET (том 2)


           

ByVal Номер As Integer) As


Function Элемент( ByVal Номер As Integer) As Control
        Select Case Номер
            Case 1
                Return Button1
            Case 2
                Return Label1
            Case 3
                Return TextBox1
        End Select
End Function
Пояснения. Функция может возвращать значение почти любого типа, а не только простого. В том числе и объект. Наша функция Элемент имеет объектный тип Control. Это значит, что в зависимости от значения своего параметра Номер она может принять значение не числа и не строки, к чему мы привыкли, а элемента управления: Button1 или Label1, или TextBox1. Вы можете в обращении мысленно заменить Элемент(1) на Button1, а Элемент(3) – на TextBox1, тогда вам будет легче привыкнуть к записи. Самое приятное, что когда мы в обращении ставим точку после Элемент(1), то всплывает список компонентов. Это происходит потому, что VB  знает, что функция имеет тип Control.
Функция Элемент дает нам замечательное преимущество работать с пронумерованными элементами управления в цикле. Например, вот как можно находить суммарную ширину элементов управления:
        For i = 1 To 3
            s = s + Элемент(i).Width
        Next
В заключение признаюсь, что создатели VB давно уже поняли прелесть нумерации элементов управления и воплотили ее стандартными средствами – при помощи так называемых коллекций (см. 16.2).

Содержание  Назад  Вперед