Difference between revisions of "Form.Close"

From SunFlurry wiki
Jump to: navigation, search
m (1 revision imported)
1>Admin
Line 13: Line 13:
 
* [[Объекты]]
 
* [[Объекты]]
 
* [[Форма]]}}
 
* [[Форма]]}}
Функция выполняет закрытие текущей формы. Если форма имеет флаг изменения, будет задан вопрос о целесообразности закрытия формы без сохранения данных (вопрос можно отключить). Также можно запретить автоматическое сохранение настроек формы, если таковое предусмотрено установками формы. Пользователь может отказать в закрытии формы, либо обработчики событий, типа [[Студия/Визуальные события|''OnClose'']] могут отменить попытку закрытия. В случае, если форму не удалось закрыть, функция возвращает 0, иначе 1. В случае успешного выполнения функции, форма не будет закрыта до тех пор, пока текущий код не закончит исполнение, так как внутри кода могут быть другие вызовы к элементам и свойствам формы. Если код не возвращает управление слишком долгое время, система производит отмены закрытия формы, форма закрыта не будет. Из-за такого механизма защиты, рекомендуется после вызова функции закрытия сразу же выйти из исполняемого модуля.
+
Функция выполняет закрытие текущей формы. Если форма имеет флаг изменения, будет задан вопрос о целесообразности закрытия формы без сохранения данных (вопрос можно отключить). Также можно запретить автоматическое сохранение настроек формы, если таковое предусмотрено установками формы. Пользователь может отказать в закрытии формы, либо обработчики событий, типа [[Студия/Визуальные события|''OnClose'']] могут отменить попытку закрытия. В случае, если форму не удалось закрыть, функция возвращает 0, иначе 1. В случае успешного выполнения функции, форма не будет закрыта до тех пор, пока текущий код не закончит исполнение, так как внутри кода могут быть другие вызовы к элементам и свойствам формы. Если код не возвращает управление слишком долгое время, система производит отмену закрытия формы, форма закрыта не будет. Из-за такого механизма защиты, рекомендуется после вызова функции закрытия сразу же выйти из исполняемого модуля. См. также описание функции [[Form.Destroy|Destroy]].
  
 
== Синтаксис ==
 
== Синтаксис ==
Line 21: Line 21:
  
 
==== Аргументы ====
 
==== Аргументы ====
* <code>''<Задавать вопрос о сохранении данных (INT)>''</code> - {{Optional}} По умолчанию (1), если форма имеет флаг изменения, пользователю будет задан вопрос о целесообразности закрытия формы без ее сохранения. Если задать этот параметр, как 1, вопрос задан не будет, и форма возможные изменения будут утеряны.
+
* <code>''<Задавать вопрос о сохранении данных (INT)>''</code> - {{Optional}} По умолчанию (1), если форма имеет флаг изменения, пользователю будет задан вопрос о целесообразности закрытия формы без ее сохранения. Если задать этот параметр как 0, вопрос задан не будет, и возможные изменения на форме будут утеряны.
 
* <code>''<Запретить автоматическое сохранение настроек формы (INT)>''</code> - {{Optional}} Аргумент может запретить автоматическое сохранение настроек формы во время ее закрытия, по умолчанию (0), однако, это сохранение разрешено, если установки формы его позволяют.
 
* <code>''<Запретить автоматическое сохранение настроек формы (INT)>''</code> - {{Optional}} Аргумент может запретить автоматическое сохранение настроек формы во время ее закрытия, по умолчанию (0), однако, это сохранение разрешено, если установки формы его позволяют.
  

Revision as of 12:11, 23 March 2021

  Close (Закрытие формы)
Объект:Форма
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Невозможно превратить в число
Визуальность:Да

Функция выполняет закрытие текущей формы. Если форма имеет флаг изменения, будет задан вопрос о целесообразности закрытия формы без сохранения данных (вопрос можно отключить). Также можно запретить автоматическое сохранение настроек формы, если таковое предусмотрено установками формы. Пользователь может отказать в закрытии формы, либо обработчики событий, типа OnClose могут отменить попытку закрытия. В случае, если форму не удалось закрыть, функция возвращает 0, иначе 1. В случае успешного выполнения функции, форма не будет закрыта до тех пор, пока текущий код не закончит исполнение, так как внутри кода могут быть другие вызовы к элементам и свойствам формы. Если код не возвращает управление слишком долгое время, система производит отмену закрытия формы, форма закрыта не будет. Из-за такого механизма защиты, рекомендуется после вызова функции закрытия сразу же выйти из исполняемого модуля. См. также описание функции Destroy.

Синтаксис

Form.Close(<Задавать вопрос о сохранении данных (INT)>=1,<Запретить автоматическое сохранение настроек формы (INT)>=0):<Закрытие разрешено, форма закрывается (INT)>

Аргументы

  • <Задавать вопрос о сохранении данных (INT)> - (необязательный аргумент) По умолчанию (1), если форма имеет флаг изменения, пользователю будет задан вопрос о целесообразности закрытия формы без ее сохранения. Если задать этот параметр как 0, вопрос задан не будет, и возможные изменения на форме будут утеряны.
  • <Запретить автоматическое сохранение настроек формы (INT)> - (необязательный аргумент) Аргумент может запретить автоматическое сохранение настроек формы во время ее закрытия, по умолчанию (0), однако, это сохранение разрешено, если установки формы его позволяют.

Возвращаемое значение

Возвращает 1, если форма будет закрыта, иначе возвращает 0 (к примеру, пользователь отказался от закрытия формы).

Примеры

//Пример фрагмента в обработчике события OnOpen, после вызова Form.Close желательно сразу выйти из обработчика с помощью (Exit)
Try
  If IsEmpty(Param.GetByName("Документ")) Then
    Form.Close(0);
    Exit;
  EndIf;
Except
  Form.Close(0);
  Exit;
EndTry;