Новый приём (с Dictionary)

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Filyus
Обычный пользователь
Обычный пользователь
 
Сообщения: 81
Зарегистрирован: 07.07.2011 (Чт) 11:54

Новый приём (с Dictionary)

Сообщение Filyus » 09.03.2013 (Сб) 13:12

Нигде его не видел, поэтому считаю, что новый. Для использования Dictionary нужно подключить Microsoft Scripting Runtime.
Код: Выделить всё
Private Sub Form_Load()
  Dim d As New Dictionary
  d.Add "one", 1
  d.Add "two", 2
  With d
    !one = 3
    !two = !one
    MsgBox !one & " " & !two
  End With
End Sub
Последний раз редактировалось Filyus 09.03.2013 (Сб) 15:00, всего редактировалось 1 раз.

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Новый приём (с Dictionary)

Сообщение ger_kar » 09.03.2013 (Сб) 14:46

А в чём суть действа, если честно я нифига не понял, что есть это :)
Бороться и искать, найти и перепрятать

Filyus
Обычный пользователь
Обычный пользователь
 
Сообщения: 81
Зарегистрирован: 07.07.2011 (Чт) 11:54

Re: Новый приём (с Dictionary)

Сообщение Filyus » 09.03.2013 (Сб) 14:54

ger_kar писал(а):А в чём суть действа, если честно я нифига не понял, что есть это :)

Dictionary - это ассоциативный массив, то есть каждому элементу соответствует другой элемент (обычно строка, т.е. "ключ"). Сперва добавляем в массив два элемента: 1 и 2 с ключами "one" и "two" соответственно, а потом обращаемся к нему в упрощённой форме. Суть в том, что "!" (обращение к свойству по умолчанию, в котором есть один параметр-строка) можно использовать в "With".
В обычном виде это выглядело бы так:
Код: Выделить всё
Private Sub Form_Load()
  Dim d As New Dictionary
  d.Add "one", 1
  d.Add "two", 2
  d("one") = 3
  d("two) = d("one")
  MsgBox d("one") & " " & d("two)
End Sub


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 8

    TopList