Difference between revisions of "Студия/OnAfterEdit"
(Created page with "{{infobox function |name=OnAfterEdit |element=Внедренная электронная таблица |caption=Визуальные события |eventtype=Прерыва...") |
m (1 revision imported) |
(No difference)
|
Latest revision as of 07:55, 7 February 2021
OnAfterEdit (Визуальные события) | |||||||
---|---|---|---|---|---|---|---|
|
Событие, возникающее после окончания редактирования ячейки или объекта встроенной таблицы. Если данное событие не задано, будет вызвано локальное, а затем глобальное событие OnAfterEdit, которое также вызывается для свободных таблиц.
Аргументы
<EditMode (INT)>
- (возможен аргумент-переменная (ByRef)) Переменная описывает режим редактирования, может принимать следующие значения:- 0 -- Редактировался текст ячейки (объекта)
- 1 -- Редактировался объект ячейки (объекта)
<ObjectType (INT)>
- Переменная задает тип объекта, может принимать следующие значения:- -1 -- курсор выделяет ячейку таблицы.
- больше или равна нулю -- задает тип объекта, на котором находится курсор. Для описания типов объектов, см. Object.Type.
<ObjectIndex (INT)>
- Переменная задает индекс объекта, для которого выполняется операция, если операция выполняется для ячейки, переменная будет иметь значение -1.<Line (INT)>
- Переменная задает номер строки редактируемой ячейки. Если редактируется объект, переменная принимает значение -1.<Column (INT)>
- Переменная задает номер столбца редактируемой ячейки. Если редактируется объект, переменная принимает значение -1.<IsChanged (INT)>
- Переменная равна 1, если в процессе редактирования пользователь внес изменения в поле редактирования, иначе переменная равна 0.
Примеры
//Пример обработчика OnAfterEdit, записывающий изменения, сделанные в ячейке пользователем Таб:=Form.Таблица.Value; //Редактировали цену If Column<>6 Then Exit; EndIf; //Значение -- номенклатура зН:=Таб.Area(3,Line,3,Line).Value; if _Or(isEmpty(зН),зН.IsFolder()) Then Exit; EndIf; О:=Таб.Area(6,Line,6,Line); //Новое значение цены Знч:=О.Value; //Очистим значение, чтобы редактирование всегда начиналось с нуля, а не со старого значения О.Value:=GetNothing(); If УстановитьЦену(зН,Form.оДата.Value,Знч,Form.оНов.Value) Then //Установим новый текст Таб.Area(6,Line,6,Line).Text:=FormatNumber(Знч,1,"",2); EndIf;