Справочное руководство по TDMS 7.0 API
ObjectBeforeModify Событие
Смотри также  Пример  Отправить замечание
pObject
Объект, который был изменен.
bCancel
TRUE - одновременно отменить изменение объекта и закрытие окна свойств.
TDMSApplication Объект : ObjectBeforeModify Событие

Glossary Item Box

Описание

Генерируется перед сохранением изменений объекта, в момент закрытия Окна свойств.

Опеделение

Visual Basic
Public Event ObjectBeforeModify( _
   ByVal pObject As TDMSObject, _
   ByRef bCancel As Boolean _
)

Параметры

pObject
Объект, который был изменен.
bCancel
TRUE - одновременно отменить изменение объекта и закрытие окна свойств.

Заметки

1. Событие является отменяемым: присвоением параметру bCancel значения TRUE можно отменить сохранение изменений атрибутов объекта, закрытие окна свойств объекта также будет отменено. В результате пользователь может только закрыть окно свойств объекта без сохранения изменений. Внимание: отмена события никак не влияет на значения табличных атрибутов - они обновляются немедленно в ходе редактирования.

2. Событие генерируется только в случае, если какие-либо параметры объекта были изменены через Окно свойств (редактирование атрибутов или состава, изменение файлового состава, создание версий и т.п.). Если изменения были произведены на Панели свойств (без открытия окна свойств), то событие не наступит. Событие генерируется только один раз - перед закрытием окна свойств объекта, в отличие от события FormAttributeChange Событие.

3. Событие не может быть сгенерировано программно.

4. Обработчик может быть размещен в скриптах объекта, профиля и/или общесистемном. Если обработчики определены на всех уровнях, то последовательность их вызова такова:

  • скрипт объекта;
  • скрипт профиля пользователя;
  • общесистемный скрипт.

Если на каком-либо уровне событие было отменено (параметру bCancel присвоено значение TRUE), то обработчики события, размещенные на последующих уровнях, вызваны не будут.

5. Схему последовательности генерации событий при редактировании атрибутов объекта в окне свойств см. на рисунке:

Пример

VB Script (Visual Basic)Скопировать код
'======================================================================
'Текст обработчика может быть размещен в скрипте объекта, 
'профиля или общесистемном скрипте.

Sub Object_BeforeModify(Obj, Cancel)
        'Проверить тип объекта - редактирование объектов типа "Тест" запретить
        If Obj.ObjectDefName = "OBJ_TEST" Then
                    msg = "Свойства объектов этого типа менять нельзя." 
                    MsgBox msg, vbInformation, "Редактирование объекта"
                    Cancel = True
        End If                
End Sub

'======================================================================

Смотри также

© 2023 CSoft Development. Все права защищены.