---
title: "Динамический массив (Интерфейс ksDynamicArray)"
type: interface
api: [api7]
tags: [interface, api7, ksdynamicarray]
sources:
  - ksdynamicarray.html
---

*API интерфейсов. Версия 5*


## Динамический массив (Интерфейс ksDynamicArray)

Интерфейс динамического массива.
Указатель на интерфейс можно получить при помощи методов...
Типы динамических массивов...
См. также...


## См. также

KompasObject,
ksAttributeObject,
ksAttributeTypeParam,
ksBaseParam,
ksBezierParam,
ksBrandLeaderParam,
ksColumnInfoParam,
ksCurvePicture,
ksCurveStyleParam,
ksCutLineParam,
ksDimTextParam,
ksLeaderParam,
ksMarkerLeaderParam,
ksNurbsParam,
ksPolylineParam,
ksPosLeaderParam,
ksRectangleParam,
ksRegularPolygonParam,
ksRoughPar,
ksSpcObjParam,
ksSpcStyleParam,
ksSpcStyleSectionParam,
ksSpcTuningSectionParam,
ksSpcTuningStyleParam,
ksStamp,
ksTechnicalDemandParam,
ksTextLineParam,
ksTextParam,
ksToleranceBranch,
ksUserParam,
ksViewPointerParam.


## Методы получения

KompasObject::GetDynamicArray
KompasObject::ksGetLibraryStylesArray
ksAttributeObject::ksGetLibraryAttrTypesArray
ksAttributeTypeParam::GetColumns
ksBaseParam::GetPTextItem
ksBezierParam::GetMathPointArr
ksBrandLeaderParam::GetpPolyline
ksBrandLeaderParam::GetpTextline
ksColumnInfoParam::GetColumns
ksColumnInfoParam::GetFieldEnum
ksCurvePicture::GetFill
ksCurvePicture::GetPolygon
ksCurveStyleParam::GetPPattern
ksCutLineParam::GetpMathPoint
ksCutLineParam::GetpTextline
ksDimTextParam::GetTextArr
ksDocument2D::ksGetDocVariableArray
ksDocument2D::ksGetObjConstraints
ksLeaderParam::GetpPolyline
ksLeaderParam::GetpTextline
ksMarkerLeaderParam::GetpPolyline
ksMarkerLeaderParam::GetpTextline
ksMathematic2D::ksPointsOnCurve
ksNurbsParam::GetPKnot
ksNurbsParam::GetPPoint
ksPolylineParam::GetPMathPoint
ksPosLeaderParam::GetpPolyline
ksPosLeaderParam::GetpTextline
ksQualityContensParam::GetpQualityItems
ksRectangleParam::GetPCorner
ksRegularPolygonParam::GetPCorner
ksRoughPar::GetpText
ksSpcObjParam::GetDocArr
ksSpcStyleParam::GetArrAdditionalColumn
ksSpcStyleParam::GetArrColumn
ksSpcStyleParam::GetArrSection
ksSpcStyleSectionParam::GetArrAdditionalColumn
ksSpcStyleSectionParam::GetArrColumn
ksSpcTuningSectionParam::GetArrSubSection
ksSpcTuningStyleParam::GetArrSection
ksStamp::ksGetStampColumnText
ksTechnicalDemandParam::GetPGab
ksTextLineParam::GetTextItemArr
ksTextParam::GetTextLineArr
ksToleranceBranch::GetpMathPoint
ksToleranceParam::GetBranchArr
ksUserParam::GetUserArray
ksViewPointerParam::GetpTextline


## ksAddArrayItem - Добавить элемент в массив

Аналог данного метода при использовании API экспортных функций - AddArrayItem.
Синтаксис Automation:
```
long ksAddArrayItem (long index, LPDISPATCH item);
Входные параметры:
index    - индекс элемента, перед которым нужно вставить новый элемент, нумерация начинается с 0, при index=-1 элемент добавляется в конец массива,
item    - указатель на интерфейс соответствующего типа.
Возвращаемое значение:
1    - в случае удачного завершения.
Смотрите также:
Типы динамических массивов...
```


## ksClearArray - Очистить массив

Аналог данного метода при использовании API экспортных функций - ClearArray.
Синтаксис Automation:
```
long ksClearArray();
Возвращаемое значение:
1    - в случае удачного завершения,
0    - в случае неудачи.
```
Примечание:
1. Из массива удаляются все элементы, но сам массив не удаляется.
2. При удалении пользовательского элемента, автоматические вызывается пользовательская функция удаления элемента, заданная пользователем при создании массива.


## ksDeleteArray - Удалить массив

Аналог данного метода при использовании API экспортных функций - DeleteArray.
Синтаксис Automation:
```
long ksDeleteArray();
Возвращаемое значение:
1    - в случае удачного завершения.
```
Примечание:
Может быть удален непустой массив, то есть перед вызовом метода ksDynamicArray::ksDeleteArray вызывать ksDynamicArray::ksClearArray необязательно.


## ksExcludeArrayItem - Удалить элемент массива

Аналог данного метода при использовании API экспортных функций - ExcludeArrayItem.
Синтаксис Automation:
```
long ksExcludeArrayItem (long index);
Входной параметр:
index    - индекс элемента в массиве, нумерация начинается с 0.
Возвращаемое значение:
1    - в случае удачного завершения,
0    - в случае неудачи.
```


## ksGetArrayCount - Получить количество элементов в массиве

Аналог данного метода при использовании API экспортных функций - GetArrayCount.
Синтаксис Automation:
```
long ksGetArrayCount();
Возвращаемое значение:
- количество элементов в массиве.
```


## ksGetArrayItem - Получить элемент массива

Аналог данного метода при использовании API экспортных функций - GetArrayItem.
Синтаксис Automation:
```
long ksGetArrayItem (long index,
LPDISPATCH item);
Входной параметр:
index    - индекс элемента в массиве, нумерация начинается с 0.
Выходной параметр:
item    - указатель на интерфейс соответствующего типа.
Возвращаемое значение:
1    - в случае удачного завершения,
0    - в случае неудачи.
Смотрите также:
Типы динамических массивов...
```


## ksGetArrayType - Получить тип массива

Аналог данного метода при использовании API экспортных функций - GetArrayType.
Синтаксис Automation:
```
long ksGetArrayType();
Возвращаемое значение:
- тип массива.
Типы динамических массивов...
```


## ksSetArrayItem - Установить параметры элемента в массиве

Аналог данного метода при использовании API экспортных функций - SetArrayItem.
Синтаксис Automation:
```
long ksSetArrayItem(long index,
LPDISPATCH item);
Входные параметры:
index    - индекс элемента в массиве, нумерация начинается с 0,
item    - указатель на интерфейс соответствующего типа.
Возвращаемое значение:
1    - в случае удачного завершения,
0    - в случае неудачи.
Смотрите также:
Типы динамических массивов...
```


## reference - Указатель на массив

Тип данных: long
Синтаксис Automation:
```
ref = iDynamicArray.reference    Получить свойство (* )
iDynamicArray.reference = ref    Установить свойство (* )
ref = iDynamicArray.GetReference()    Получить свойство (**)
iDynamicArray.SetReference(ref)    Установить свойство (**)
```
