Глобальный массив в реальном базовом
Вопрос
Какие -нибудь советы по созданию глобального массива для использования в реальном проекте с использованием «Добавить свойство»? На фото ниже моя попытка.
http://i17.photobucket.com/albums/b52/orubap/basic.jpg (редактировать: мертвая ссылка)
Использование Cammodel (1) компилирует и работает, но он ничего не возвращает. Использование Cammodel (4) бросает ошибку вне границ, поэтому я предполагаю, что я на полпути.
Предложения?
Решение
Несмотря на то, что код собирает, это не является достоверным способом инициализации массива. По крайней мере, это нигде не упоминается в руководствах. Я бы сказал, что компилятор тихо терпит неудачу в этом, в отличие от помещения его как ошибки. Вам придется разместить значения с помощью метода init, скажем, в app.open. Кроме того, не забывайте, что индексы массива основаны на 0, даже во время инициализации. Итак, проходя по данному коду, который вы дали, объявите свойство массива для трех значений:
camModel(2) as String
а затем в событии App.open:
camModel(0) = "Nikon"
camModel(1) = "Sony"
camModel(2) = "Philips"
Однако, если бы это я делал это, я бы объявил имущество таким образом:
camModel(-1) as String
а затем заполняется функцией массива:
camModel = Array("Nikon", "Sony", "Philips")
Таким образом, вы можете добавлять больше моделей позже, и не придется Futz с границами массива каждый раз.
Другие советы
Если вы хотите получить доступ к глобальной переменной, используя функцию «Добавить свойство», просто создайте новый модуль. Затем вы можете добавить свойство в модуль, к которому можно получить доступ из любого места.
Чтобы сохранить очиститель вашего пространства имен, вы можете ограничить доступ к собственности. Global позволит вам получить доступ к собственности, просто используя YourVariableName
, но вы также можете изменить разрешения на защиту (знак желтого треугольника), поэтому вам придется печатать YourModuleName.YourVariableName
Чтобы получить доступ к переменной. Это делает вещи немного чище.
Таким образом, вы можете легко создать глобальный массив, создав модуль, затем нажав свойство добавить и объявив YourArrayName(-1)
в качестве Integer
Например. Вы можете добавить, удалить и изменить любой из элементов в массиве, используя стандартные функции массива (Ubound, добавление, удаление и т. Д.).