117 lines
8.0 KiB
HTML
117 lines
8.0 KiB
HTML
<!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN>
|
||
<html>
|
||
<head>
|
||
<title>after</title>
|
||
</head>
|
||
<body>
|
||
<h1>after</h1>
|
||
|
||
<p>Команда <strong>after</strong> указывает, что некоторая команда должна
|
||
быть выполнена с задержкой по времени.</p>
|
||
|
||
<pre>
|
||
<a href=#ms><strong>after</strong></a> <em>ms</em>
|
||
<a href=#ms_script><strong>after</strong></a> <em>ms</em> ?<em>script</em> <em>script</em> <em>script</em>...?
|
||
<a href=#cancel_id><strong>after</strong> <strong>cancel</strong></a> <em>id</em>
|
||
<a href=#cancel_script_script><strong>after</strong> <strong>cancel</strong></a> <em>script</em> <em>script</em> <em>script</em>...
|
||
<a href=#idle><strong>after</strong> <strong>idle</strong></a> ?<em>script</em> <em>script</em> <em>script</em>...?
|
||
<a href=#info><strong>after</strong> <strong>info</strong></a> ?<em>id</em>?
|
||
</pre>
|
||
|
||
<h2>ОПИСАНИЕ</h2>
|
||
|
||
<p> Команда используется для того, чтобы отложить выполнение
|
||
программы или выполнить указанную команду в фоновом режиме в
|
||
некоторый момент в будущем. У команды есть несколько форм,
|
||
зависящих от ее первого аргумента.</p>
|
||
<dl>
|
||
<dt><a name=ms></a><strong>after</strong> <em>ms</em></dt>
|
||
|
||
<dd> <em>Ms</em> - целое число, задающее задержку в миллисекундах.
|
||
Команда обеспечивает задержку на соответствующее число
|
||
миллисекунд до своего завершения. Во время задержки приложение
|
||
не реагирует на события.
|
||
</dd>
|
||
|
||
<dt><a name=ms></a><strong>after</strong> <em>ms</em>
|
||
?<em>script</em> <em>script</em> <em>script</em>...?</dt>
|
||
|
||
<dd> В этой форме команда завершается немедленно, но при этом
|
||
она обеспечивает выполнение Tcl-команды <em>script script
|
||
script</em> через соответствующее время. Команда выполняется
|
||
ровно один раз в установленный момент времени. Команда
|
||
формируется объединением всех перечисленных аргументов
|
||
<em>script</em> таким же образом, как при выполнении команды <a
|
||
href=concat.html><strong>concat</strong></a>. Команда выполняется
|
||
на глобальном уровне (вне контекста какой-либо
|
||
Tcl-процедуры). Ошибки во время выполнения команды (если они
|
||
происходят) обрабатываются с помощью процедуры <a
|
||
href=bgerror.html><strong>bgerror</strong></a>. Команда
|
||
<strong>after</strong> в этой форме возвращает идентификатор, который
|
||
может быть использован для отмены отложенной команды с помощью
|
||
команды <strong>after cancel</strong>.
|
||
</dd>
|
||
|
||
<dt><a name=cancel_id></a><strong>after</strong> <strong>cancel</strong>
|
||
<em>id</em></dt>
|
||
|
||
<dd> Отменяет исполнение ранее заявленной отложенной команды.
|
||
<em>Id</em> определяет, какая именно команда будет отменена.
|
||
Значение <em>id</em> должно совпадать со значением, возвращенным
|
||
предыдущей командой <strong>after</strong>. Если соответствующая команда
|
||
уже выполнена, команда <strong>after cancel</strong> игнорируется.
|
||
</dd>
|
||
|
||
<dt><a name=cancel_script_script></a><strong>after</strong>
|
||
<strong>cancel</strong> <em>script</em> <em>script</em>...</dt>
|
||
|
||
<dd> Эта команда также отменяет выполнение ранее заявленной
|
||
отложенной команды. Все перечисленные скрипты <em>script</em>
|
||
объединяются через пробел таким же образом, как при выполнении
|
||
команды <a href=concat.html><strong>concat</strong></a>. После
|
||
чего ищется отложенная команда с аналогичным скриптом. Если
|
||
такая команда будет найдена, ее исполнение будет отменено. В
|
||
противном случае команда <strong>after cancel</strong> игнорируется.
|
||
</dd>
|
||
|
||
<dt><a name=idle></a><strong>after</strong> <strong>idle</strong> <em>script</em>
|
||
?<em>script</em> <em>script</em>...?</dt>
|
||
|
||
<dd> Все перечисленные скрипты объединяются через пробел таким
|
||
же образом, как при выполнении команды <a
|
||
href=concat.html><strong>concat</strong></a>. Сформированная таким
|
||
образом Tcl команда выполняется позже. Она выполняется ровно
|
||
один раз в первом цикле обработчика событий, в котором не
|
||
будет других необработанных событий. Команда <strong>after idle</strong>
|
||
возвращает идентификатор, который может быть использован для
|
||
отмены отложенной команды. Ошибки во время выполнения команды
|
||
(если они происходят) обрабатываются с помощью процедуры <a
|
||
href=bgerror.html><strong>bgerror</strong></a>.
|
||
</dd>
|
||
|
||
<dt><a name=info></a><strong>after</strong> <strong>info</strong> ?<em>id</em>?</dt>
|
||
|
||
<dd> Эта команда используется для получения информации об
|
||
отложенных командах. Если аргумент <em>id</em> отсутствует , то
|
||
возвращает список идентификаторов отложенных команд. Если
|
||
аргумент <em>id</em> указан и соответствует идентификатору
|
||
отложенной команды, которая не отменена и еще не выполнена,
|
||
возвращается список из двух элементов. Первый элемент списка
|
||
- Tcl-скрипт соответствующей команды, второй - <strong>idle</strong>
|
||
или <strong>timer</strong> в зависимости от того, по какому событию
|
||
предполагается вызов команды.
|
||
</dd>
|
||
</dl>
|
||
|
||
<p>Команды <strong>after ms</strong> и <strong>after idle</strong> предполагают, что
|
||
приложение управляется событиями. Отложенные команды не
|
||
выполняются, если в приложении не активизирован цикл обработки
|
||
событий. В приложениях, в которых он обычно не активизирован,
|
||
таких как <strong>tclsh</strong>, цикл обработки событий может быть
|
||
активизирован с помощью команд <a href=
|
||
vwait.html><strong>vwait</strong></a> и <a href=
|
||
update.htm><strong>update</strong></a>.</p>
|
||
</body>
|
||
</html>
|
||
|