Классы

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Классы

Сообщение Sirik » 19.10.2004 (Вт) 9:18

Как в классе реализовать свойство массив?
Ранее уменя были свойства только стринги лонги, но теперь надо сделать массив, при чём вида (2,10).

Попробовал просто через Public - ошибка "вылетает".

Может будут предложения ?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 19.10.2004 (Вт) 10:01

Либо функцию, возвращающую long(), либо функцию, возвращающую variant. А напрямую низя :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 19.10.2004 (Вт) 10:03

Я прочитал что можно через тип Variant. Вот если бы пример был...

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 19.10.2004 (Вт) 10:04

А он есть. Поищи. Прямо тут.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 19.10.2004 (Вт) 10:07

Всё!!!! сам сделал: всё гениальное просто.
Вот нашёл страничку:
Массивы могут храниться в переменных типа Variant. Иногда это бывает удобным. В некоторых случаях без этого просто не обойтись! (Например, когда вы хотите, чтобы ваша функция возвращала массив). Чтобы сохранить какой-либо массив в переменной типа Variant необходимо просто присвоить этой переменной нужный массив:

Dim myVariantArray ' переменная Variant по умолчанию
myVarianrArray = chessTable

Обратите внимание, никакие индексы указывать не нужно!

Теперь можно использовать копию как обычный массив:

myVarianrArray (0) = "Это копия"



Так и сделал, всё работает просто супер!!!

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 19.10.2004 (Вт) 17:47

FYI, обычно свойства-массивы, например VBA.Collection::Item, реализованы как свойства с параметром, например:
Код: Выделить всё
Public Property Get Item (ByVal Index As Long) As Your_Type
Изображение


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7

    TopList  
cron