Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MB6REFRU.pdf
Скачиваний:
10
Добавлен:
13.02.2015
Размер:
3.83 Mб
Скачать

Оператор Set Event Processing

Оператор Set Event Processing

Назначение:

Позволяет временно отключить реакцию на системные события и избегать лишних перерисовок экрана.

Синтаксис:

Set Event Processing { On | Off }

Описание:

Оператор Set Event Processing позволяет временно отключать реакцию на системные события и тем самым избежать ненужной перерисовки содержимого экрана. Тот же оператор позволяет затем снова включить реакцию на системные события.

Несколько последовательных команд могут изменять окно, что сопровождается перерисовкой его содержимого. Чтобы сэкономить время, пользователь может отключить перерисовку окон оператором

Set Event Processing Off,

а после того, как все операторы, изменяющие окно (например, Set Map), отработают, включить перерисовку снова:

Set Event Processing On.

Каждый оператор Set Event Processing Off должен иметь парный Set Event Processing On. Если, работая в многозадачных системах (например, Windows или System 7), Вы забудете включить обработку событий обратно, это может повлиять на работу других программ.

Вы также можете управлять перерисовкой изображения в окне оператором Set Map... Redraw Off, действие которого похоже на действие оператора Set Event Processing Off. Однако оператор Set Map... Redraw управляет перерисовкой одного окна Карты, а действие оператора Set Event Processing распространяется на все окна MapInfo.

492

Справочник MapBasic

Оператор Set File Timeout

Оператор Set File Timeout

Назначение:

Предписывает MapInfo повторять попытку доступа к файлу после сетевого конфликта.

Синтаксис:

Set File Timeout n

где

n – число от нуля и больше, задающее ожидание в секундах.

Описание:

Обычно, если операция не может быть продолжена изLза конфликта в сети, MapInfo показывает диалог типа “Повторить/Отменить”. Если программа MapBasic выполнит оператор Set File Timeout, то MapInfo вместо вывода диалога будет автоматически повторять попытки открыть файл, доступ к которому в сети запрещен. Это может понадобиться тогда, когда несколько пользователей работают в сети с одной таблицей.

Если число n больше нуля, то через каждые n секунд MapInfo делает очередную попытку открыть файл. Если таблица все еще не доступна, MapInfo показывает диалог с соответствующим сообщением. Этот диалог нельзя перехватить и обработать средствами обработки ошибок MapBasic.

Если n=0 MapInfo демонстрирует диалог немедленно, как только обнаруживает, что таблица недоступна.

Внимание: Не используйте одновременно оператор Set File Timeout и обработчик ошибок OnError. Там, где действует обработчик ошибок, значение ожидания должно быть равно нулю. Там, где ожидание не равно нулю, нужно отключать обработчик ошибок.

Более подробно возможные конфликты в сети описаны в 7 главе Руководства пользователя MapBasic.

Пример:

Set File Timeout 100

Справочник MapBasic

493

Оператор Set Format

Оператор Set Format

Назначение:

Задает, как MapBasic составляет строки из численных значений и значений даты и времени.

Синтаксис (вариант 1):

Set Format Date { “US” | “Local” }

Синтаксис (вариант 2):

Set Format Number { “9,999.9” | “Local” }

Описание:

Пользователь может установить разные форматы для даты и чисел в своем компьютере. Например, WindowsLпользователь может изменить формат, используя “Международные” (“International”) установки в среде Windows версий 3.x или “Язык и стандарты” (“Regional”) в среде Windows 95 (в программе Control Panel).

Некоторые функции MapBasic, такие как Str$( ), используют эти системные установки. Другими словами, некоторые функции могут иметь разные результаты, так как выполнялись в компьтерах с разными системными конфигурациями.

Оператор Set Format заставляет программу MapBasic игнорировать внешние установки так, чтобы функции (такие как Str$( )) вела себя предсказуемо.

Оператор

Эффект в программе MapBasic

Set Format Date ”US”

MapBasic использует форму Месяц/День/Год для

 

представления даты вместо внешней установки

 

компьтера пользователя.

Set Format Date ”Local”

MapBasic использует форму для представления даты

 

согласно установке компьютера пользователя.

Set Format Number ”9,999.9”

Функция Format$( ) использует установку для

 

форматирования числа, принятую в США (десятичной

 

точкой является точка, а разделителем тысяч – запятая)

 

вместо внешней установки компьютера пользователя.

Set Format Number ”Local”

Функция Format$( ) использует форму для

 

представления чисел согласно установке компьютера

 

пользователя.

Первый вариант синтаксиса (Set Format Date) имеет эффект для следующих случаев: вызов функции StringToDate( );

использование даты в функции Str$( );

выполнение операций в MapBasic, ведущих к автоматическому конвертированию строковых значений и значений дат (например, применение оператора Print для печати даты или при присваивании переменной строкового типа величины типа Date).

Второй вариант синтаксиса (Set Format Number) влияет на функции Format$( ) и FormatNumber$( ).

494

Справочник MapBasic

Оператор Set Format

Программы, откомпилированные MapBasic версии 3.0 и более ранней, по умолчанию используют стандарт США. Программы, откомпилированные в MapBasic версии 4.0 и в более поздних вверсиях по умолчанию используют установку “Local”.

Для определения, какой режим форматирования установлен, используется функция SystemInfo( ). Установка оператора Set Format, сделанная в одной программе MapBasic, не влияют на другие выполняющие программы.

Пример:

Пусть переменная типа даты date_var содержит “June 11, 1995”. Функция:

Str$( date_var )

будет иметь результат “06/11/95” или “95/11/06”, в зависимости от того, какой формат для дат установлен на Вашем компьютере.

Если Вы вставите в текст Вашей программы оператор Set Format Date “US” перед местом, где используется функция Str$( ), то результатом будет “11/06/95”.

Смотрите также:

Format$( ), FormatNumber$( ), Str$( ), StringToDate( ), SystemInfo( )

Справочник MapBasic

495

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]