LEADERSOFT.ru
Разработка на заказ программ и сайтов
Разработка
Заказ программы
Прайс-лист
Техническое задание
Проектная документация
Наши клиенты
Реклама и продвижение
Магазин
Перейти в магазин
Новинки магазина
Бизнес программы
Финансовый учет
Документооборот
Исходные коды
Интернет решения
Обучение
Перейти в раздел
Форумы по разработке
Примеры на Access
Рассылка статей
Магазин IT литературы
Блог
Все статьи
Microsoft Access (VBA)
Microsoft Access (Проекты)
Microsoft ASP.NET
Сервисы Google
Технические задания
Новости IT технологий
Сервисы
Форумы разработчика
Контакты
О компании
Регистрация на сайте
Подписка на новости по Email
Сообщество Google+
Подписка subscribe.ru
Новости в формате Атом
Загрузить
Загрузить каталог программ
Форумы по информационным технологиям
Начало
Forums
Регистрация
|
Вход
Forums
Обновлено ::
06 февраля 2005
Форумы
Поиск
Список форумов
Программирование
Microsoft Access. Файлы mdb и accdb
Тема: Как созда...
Тема: Как создать свою коллекцию объектов?
15.06.2007 21:09:47
NikNik
7 сообщения
Тема: Как создать свою коллекцию объектов?
например, как коллекция forms...
чтобы можно было обращаться к элементу и по номеру и по названию:
MyObjectCollection(0).СвойствоМоегоОбъекта
MyObjectCollection("Name").СвойствоМоегоОбъекта
т.е. я создал некий класс. Объектов этого класса может быть много. Как мне засунуть их в коллекцию?
P.S. Создание классов
Автор:
r_nikola
от 12.10.2005 18:46:41
Источник ...
15.06.2007 21:09:47
All
4316 сообщения
Уже разобрался
Извиняйте за беспокойство
P.S. Создание классов
Автор:
r_nikola
от 0:00:00
Источник ...
15.06.2007 21:09:47
All
4316 сообщения
RE: Как создать свою коллекцию объектов?
Лучше на эту тему почитать "Разработка настольных приложений" Пола Литвина где грамотные ребята предлогают создание коллекции в два этапа.
1-й создание класса в котором описываются элементы коллекции.
2-й создание самой коллекции.
Что-бы много не писать выложу свою коллекцию.
Option Compare Database
Option Explicit
1-й этап(Создаю класс clsWriteOffRow)
Option Compare Database
Option Explicit
Private strCLine As String
Private lngIdGood As Long
Private dblPrime As Double
Private Sub Class_Initialize()
strCLine = "Line" & CLng(Rnd * (2 ^ 31))
End Sub
Property Get CLine() As String
CLine = strCLine
End Property
Property Get pIdGood() As Long
pIdGood = lngIdGood
End Property
Property Let pIdGood(ByVal PRM As Long)
lngIdGood = PRM
End Property
Property Get pPrime() As Single
pPrime = dblPrime
End Property
Property Let pPrime(ByVal PRM As Single)
dblPrime = PRM
End Property
2-й этап(Создаю класс clsWriteOffRows который описывает действия с коллекцией)
Option Compare Database
Option Explicit
Private mcolWriteOff As Collection
Private Sub Class_Initialize()
Set mcolWriteOff = New Collection
End Sub
Public Sub Add(ByVal ByVal argIdGood As Long, _
ByVal argPrime As Double, _
Optional ByVal varBefore As Variant)
Dim mclsWriteOffRow As New clsWriteOffRow
With mclsWriteOffRow
.pIdGood = argIdGood
.pPrime = argPrime
End With
mcolWriteOff.Add mclsWriteOffRow, mclsWriteOffRow.CLine, varBefore
End Sub
Public Sub Remove(ByVal varID As Variant)
mcolWriteOff.Remove varID
End Sub
Public Function Item(ByVal varID As Variant) As clsWriteOffRow
Set Item = mcolWriteOff(varID)
End Function
Property Get Count() As Long
Count = mcolWriteOff.Count
End Property
В приложении заполняется коллекция так
Do Until .EOF
mclsWriteOffRows.Add RS!fIdGood, RS!fPrime
.MoveNext
Loop
Обращение к элементу коллекции
mclsWriteOff.mclsWriteOffRows.Item(i).pIdGood
Советую много почитать перед началом испытаний.
P.S. Создание классов
Автор:
Luckiy
от 0:00:00
Источник ...
Страница 1 из 1
Программирование
Microsoft Access. Файлы mdb и accdb
Тема: Как созда...
Одноуровневый вид
Древовидная структура
Самый старый из новых
Новейший из старых
Поиск
Список форумов
Начало
|
Forums
Copyright 2002-2016 Leadersoft.ru
::
Leadersoft
::
Соглашение о безопасности
::
Условия использования