Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если аргумент Handle некорректен возникает ошибка 107 — неверный номер сеанса. Управление передается обработчику ошибок. Выполнение запроса прекращается.
3. Если текущий указатель указывает на одно из состояний «до первого примера» или «после последнего примера», то возникает ошибка 111 — попытка чтения до или после текущей выборки. Управление передается обработчику ошибок. Запрос завершается неуспешно.
4. Возвращается цвет текущего примера.
Покрасить пример (PaintCurrent)
Описание запроса:
Pascal:
Function PaintCurrent(Handle: Integer; NewColor, ColorMask: Color; Oper: Integer): Logic;
C:
Logic PaintCurrent(Integer Handle, Color NewColor, Color ColorMask, Integer Oper)
Описание аргументов:
Handle — номер сеанса.
NewColor — новый цвет для окраски примера.
ColorMask — маска цвета для окраски примера.
Oper — операция, используемая при окраске примера. Должна быть одной из констант COr, CAnd, CXor, CNot.
Назначение — изменяет цвет текущего примера.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если аргумент Handle некорректен возникает ошибка 107 — неверный номер сеанса. Управление передается обработчику ошибок. Выполнение запроса прекращается.
3. Если Oper некорректен, то возникает ошибка 114 — неверная операция окраски примера. Управление передается обработчику ошибок. Запрос завершается со значением ложь.
4. Новый цвет примера:= (Старый цвет примера And ColorMask) Oper NewColor
Ошибки компонента задачника
В табл. 20 приведен полный список ошибок, которые могут возникать при выполнении запросов компонентом задачник, и действия стандартного обработчика ошибок.
Таблица 20. Ошибки компонента задачник и действия стандартного обработчика ошибок.
№ |
Название ошибки |
Стандартная обработка |
101 |
Запрос при отсутствии задачника |
Занесение номера в Error |
102 |
Ошибка чтения задачника |
Занесение номера в Error |
103 |
Ошибка записи задачника |
Занесение номера в Error |
104 |
Попытка считывания задачника при открытых сеансах ранее считанного задачника |
Занесение номера в Error |
105 |
Закрытие задачника при открытых сеансах |
Занесение номера в Error |
106 |
Недопустимый код операции при открытии сеанса |
Занесение номера в Error |
107 |
Неверный номер сеанса |
Занесение номера в Error |
10 |
Переход за конечную границу текущей выборки |
Игнорируется |
109 |
Переход за начальную границу текущей выборки |
Игнорируется |
110 |
Неверный тип вектора в запросе Get |
Занесение номера в Error |
111 |
Попытка чтения до или после текущей выборки |
Занесение номера в Error |
112 |
Данные отсутствуют |
Игнорируется |
113 |
Неверный тип вектора в запросе Put |
Занесение номера в Error |
114 |
Неверная операция окраски примера |
Занесение номера в Error |
Стандарт первого уровня компонента предобработчик
Данный раздел посвящен описанию стандарта языка описания и хранения на внешнем носителе компонента предобработчик. Поскольку крайне редко встречаются случаи, когда сеть получает один входной сигнал, предобработчик всегда является составным. Построение предобработчика происходит в редакторе предобработчика. Для описания предобработчика предлагается использовать специальный язык.
В практике работы большинство таблиц данных не полны. То есть, часть данных в примерах задачника неизвестна. Задачник должен однозначно указать предобработчику неизвестные данные. Для этих целей для каждого типа входных данных определено специальное значение — неопределенное. Для передачи неизвестных значений используются следующие величины: 10 -40для действительных чисел и 0 для всех типов качественных признаков.
Стандартные предобработчики
В большинстве случаев достаточно использовать стандартные предобработчики, список которых приведен в табл. 11. Ниже в данном разделе приведено описание параметров стандартных предобработчиков.
Все стандартные предобработчики получают в качестве аргументов массивы входной информации и входных сигналов. Кроме того, они содержат различные наборы параметров. Алгоритмы выполнения стандартных предобработчиков приведены в разделе «Пример описания предобработчика». Далее описаны наборы параметров стандартных предобработчиков. Все параметры должны быть описаны как статические переменные.
Читать дальше