---
title: "Интерфейс IPropertySpinEdit"
type: interface
api: [api7]
tags: [interface, api7, ipropertyspinedit]
sources:
  - ipropertyspinedit.html
---

*API интерфейсов. Версия 7 > Приложение > Работа с Панелью свойств  > Интерфейс IPropertyControl  > IPropertyControl - свойства *


## Интерфейс IPropertySpinEdit

![IPropertySpinEdit](../resources/images_ipropertyspinedit.jpg)

Интерфейс элемента управления Панели свойств типа Поле ввода со счетчиком.
| |
| --- |
Элемент панели свойств
Иерархия:
IKompasAPIObject
IPropertyControl
IPropertySpinEdit
Примечание:
1. Данный интерфейс можно получить через коллекцию элементов управления Панели свойств IPropertyControls.
2. При нажатии на кнопку счетчика вызывается событие ksPropertyManagerNotify::ControlCommand.
3. При изменении значения параметра вызывается событие ksPropertyManagerNotify::ChangeControlValue.


## CheckState - Состояние опции

Тип данных: состояние опции из перечисления CheckStateEnum.
Синтаксис Automation:
```
CheckState = iObject.CheckState    Получить свойство (* )
iObject.CheckState = CheckState    Установить свойство (* )
CheckState = iObject.GetCheckState()    Получить свойство(**)
iObject.SetCheckState (CheckState)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_CheckState (&CheckState)    Получить свойство
iObject->put_CheckState (CheckState)    Установить свойство
```
Примечание:
Это свойство влияет на состояние переключателя, если свойство WithCheck имеет значение TRUE, и на отображение текста в поле элемента управления, подробнее см. CheckStateEnum.


## MaxValue - Максимальное значение

Тип данных: VARIANT
Синтаксис Automation:
```
MaxValue = iObject.MaxValue    Получить свойство (* )
MaxValue = iObject.GetMaxValue()    Получить свойство(**)
```
Синтаксис COM:
```
iObject->get_MaxValue (&MaxValue)    Получить свойство
```
Примечание:
1. Свойство доступно только для чтения.
2. Тип данных определяется типом элемента управления:
•для типа ksControlSpinInt из ControlTypeEnum используется тип long,
•для типа ksControlSpinReal из ControlTypeEnum используется тип double.


## MinValue - Минимальное значение

Тип данных: VARIANT
Синтаксис Automation:
```
MinValue = iObject.MinValue    Получить свойство (* )
MinValue = iObject.GetMinValue()    Получить свойство(**)
```
Синтаксис COM:
```
iObject->get_MinValue (&MinValue)    Получить свойство
```
Примечание:
1. Свойство доступно только для чтения.
2. Тип данных определяется типом элемента управления:
•для типа ksControlSpinInt из ControlTypeEnum используется тип long,
•для типа ksControlSpinReal из ControlTypeEnum используется тип double.


## ReadOnly - Запрет редактирования значения

Тип данных: BOOL.
Синтаксис Automation:
```
ReadOnly = iObject.ReadOnly    Получить свойство (* )
iObject.ReadOnly = ReadOnly    Установить свойство (* )
ReadOnly = iObject.GetReadOnly()    Получить свойство(**)
iObject.SetReadOnly (ReadOnly)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ReadOnly (&ReadOnly)    Получить свойство
iObject->put_ReadOnly (ReadOnly)    Установить свойство
Значение свойства:
TRUE    - ввод нового значения с клавиатуры в поле запрещен,
FALSE    - ввод нового значения с клавиатуры в раскрывающийся список разрешен.
```


## SetValueRange - Установить новые ограничения на значение

Синтаксис Automation:
```
BOOL SetValueRange (const VARIANT& minVal, const VARIANT& maxVal);
```
Синтаксис COM:
```
HRESULT SetValueRange ([in] VARIANT minVal,
[in] VARIANT maxVal,
[out, retval] VARIANT_BOOL * pVal);
Входные параметры:
minVal    - минимальное значение,
maxVal    - максимальное значение.
```
Примечание:
Тип данных максимального и минимального допустимого значения определяется типом элемента управления:
•для типа ksControlSpinInt из ControlTypeEnum используется тип long,
•для типа ksControlSpinReal из ControlTypeEnum используется тип double.


## Step - Шаг

Тип данных: double.
Синтаксис Automation:
```
Step = Object.Step    Получить свойство (* )
Object.Step = Step    Установить свойство (* )
Step = Object.GetStep()    Получить свойство(**)
Object.SetStep (Step)    Установить свойство (**)
```
Синтаксис COM:
```
Object->get_Step (&Step)    Получить свойство
Object->put_Step (Step)    Установить свойство
```


## Width - Шаблон для расчета ширины элемента управления в горизонтальном положении (в символах)

Тип данных: long.
Синтаксис Automation:
```
Width = iObject.Width    Получить свойство (* )
iObject.Width = Width    Установить свойство (* )
Width = iObject.GetWidth()    Получить свойство(**)
iObject.SetWidth (Width)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Width (&Width)    Получить свойство
iObject->put_Width (Width)    Установить свойство
Значение свойства:
Количество видимых символов в поле при горизонтальном положении Панели свойств.
```
Примечание:
Для расчета ширины элемента управления используется символ «0».


## WithCheck - Наличие опции рядом с полем ввода

Тип данных: BOOL
Синтаксис Automation:
```
WithCheck = iObject.WithCheck    Получить свойство (* )
iObject.WithCheck = WithCheck    Установить свойство (* )
WithCheck = iObject.GetWithCheck()    Получить свойство(**)
iObject.SetWithCheck (WithCheck)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_WithCheck (&WithCheck)    Получить свойство
iObject->put_WithCheck (WithCheck)    Установить свойство
Значение свойства:
TRUE    - рядом с элементом управления выводится опция,
FALSE    - рядом с элементом управления не выводится опция.
```
