Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
T-FLEX CAD - Руководство пользователя / T-FLEX CAD. Руководство. Основы. 2D проектирование и черчение.pdf
Скачиваний:
425
Добавлен:
16.05.2015
Размер:
18.16 Mб
Скачать

Макросы

//Объявление процедуры (имя макроса) public static void CreateText()

{

//Создание объекта document – документ, активный в текущий момент времени

Document document = TFlex.Application.ActiveDocument;

//Открытие блока изменения документа

document.BeginChanges("Создание текста");

//Создание объекта text – строчный текст

LineText text = new LineText(document);

//Создание свободных узлов в документе с координатами (150,100) и (150,140) FreeNode node1 = new FreeNode(document,150,100);

FreeNode node2 = new FreeNode(document,150,140);

//Построение окружности по центру и точки, через которую она проходит

CircleConstruction circle = new CircleConstruction(document); circle.SetCenterAndNode(node1,node2);

//Задание параметров объекта text

text = new LineText(document); FontStyle style = text.FontStyle; style.FontName = "Arial"; style.Bold = true;

style.Italic = true; text.Color = 1; text.Node = node2; text.Circle = circle;

text.TextValue = "Текст по окружности"; text.HorizontalAlignment = TextHorizontalAlignment.Center;

//Закрытие блока изменения документа document.EndChanges();

}

}

После написания кода макроса необходимо скомпилировать его Проект.

Отладка, компиляция и запуск макросов

Компиляция проекта

Для запуска компиляции используется следующая опция:

<Ctrl><F7> Компилировать

Компиляция проекта является необходимым действием перед запуском макроса на выполнение. В процессе компиляции система анализирует код макроса и выявляет ошибки. Сообщения об обнаруженных ошибках выводятся в окне “Выходные данные”.

Ошибки компиляции возникают, если система не может интерпретировать введённый текст. Эти ошибки могут быть связаны с неправильным синтаксисом инструкции или заданием неверного метода или свойства.

Окно «Выходные данные»

Окно “Выходные данные” расположено в нижней части редактора макросов. Оно предназначено для отображения сообщений о текущем состоянии проекта. В этом окне отображаются ошибки и предупреждения, выявленные в процессе компиляции проекта.

837

Основы. Двухмерное проектирование

Сообщение об ошибке в этом окне содержит информацию о месте ошибки в окне кода (номер строки и колонки), а также номер ошибки.

Перейти к месту ошибки в окне кода можно по , либо из контекстного меню для ошибки по можно вызвать команду “Перейти к ошибке”.

Тип ошибки и информацию о ней можно посмотреть в руководстве разработки приложений Microsoft Developer Network (MSDN) по коду, который отображен в сообщении об ошибке в окне “Выходные данные”.

В случае успешной компиляции проекта макрос будет добавлен в окно “Макросы” T-FLEX CAD и может быть запущен на выполнение.

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

Отладка макроса. Точки прерывания

Если после запуска макроса на выполнение стало очевидно, что макрос работает неправильно, можно воспользоваться режимом отладки макроса для обнаружения ошибок кода.

В режиме отладки макрос компилируется (при необходимости) и затем запускается на выполнение с возможностью остановок в промежуточных точках - точках прерывания. В момент остановки можно проверить текущие состояния объектов макроса с помощью команды “Вычислить выражение”.

838

Макросы

Задание точек прерывания

Создать точки прерывания можно с помощью команды “Установить/удалить точку прерывания”:

Клавиатура

Текстовое меню

 

Пиктограмма

 

 

 

 

<F9>

«Отладка|Точка прерывания»

 

 

 

 

 

 

Точка прерывания назначается на ту строку кода, где находился курсор на момент вызова команды. То есть для создания точки прерывания нужно установить курсор на ту строку кода, перед которой необходимо остановить выполнение макроса, и нажать <F9> (или вызвать команду другим способом). В области меток слева от выбранной строки кода появится пометка точки прерывания – , а сама строка будет выделена цветом. Для создания ещё одной точки прерывания необходимо установить курсор на следующую строку и снова вызвать команду “Установить/удалить точку прерывания”, и т.д.

Список всех назначенных точек прерывания отображается в окне “Точки прерывания”.

Для удаления точки прерывания достаточно установить курсор в строку с точкой прерывания и повторно вызвать команду – “Установить/удалить точку прерывания”.

839

Основы. Двухмерное проектирование

Запуск режима отладки

Запустить режим отладки макроса можно с помощью следующей команды:

Клавиатура

Текстовое меню

Пиктограмма

 

 

 

<F5>

«Отладка|Начать отладку»

 

 

 

 

Так как модуль может содержать несколько макросов (процедур), то предварительно нужно указать, какая процедура должна быть запущена. Для этого в команде “Свойства проекта” (до запуска режима отладки) необходимо выбрать метод по умолчанию (макрос).

Если метод по умолчанию заранее не задан, то после запуска режима отладки на экране появится диалог “Макросы”, в котором предлагается выбрать отлаживаемый метод (макрос). Метод можно выбрать либо из предлагаемого списка методов текущего проекта, либо вписать его имя вручную, нажав кнопку [Задать вручную]. При нажатии кнопки открывается диалог “Макрос”, в котором надо задать пространство имён, класс и имя процедуры, которая будет запущена.

После выбора метода он будет запущен. Если с момента последней компиляции код модуля был изменён, перед запуском режима отладки система предложит перекомпилировать проект.

Работа в режиме отладки

После запуска выполнение макроса доходит до первой точки прерывания в коде и останавливается. Выполнения макроса передаётся в редактор макросов в строку с кодом, идущую до точки прерывания. Основное окно T-FLEX CAD становится неактивным. В этот момент можно вызвать команду “Вычислить выражение”:

Клавиатура

Текстовое меню

Пиктограмма

 

 

 

<Ctrl><Alt>

«Отладка|Вычислить

 

<Q>

выражение»

 

Данная команда позволяет проверить значение любого объекта кода на момент остановки макроса. Объект может быть как системного типа (строкового, целого, вещественного и т.д.), так и пользовательского.

840