Главная » Delphi, OLE, САПР » Таблица – КОМПАС в DELPHI

0

Построение таблицы

Таблица представляет собой составной объект, состоящий из отрезков (горизонтальных и вертикальных) и текстовых строк. Построение таблицы осуществляется в три этапа: 1) запуск построения таблицы; 2) вывод (построение) объектов, из которых состоит таблица; 3) завершение построения таблицы. Рассмотрим их.

Запуск   построения   таблицы   осуществляется   с   помощью   метода

ksTable() интерфейса ksDocument2D. Данный метод не имеет входных параметров.

Согласно документации метод ksTable() возвращает числовой идентификатор таблицы. Однако, как показывает эксперимент, данный метод, в случае успеха возвращает значение 1.

После того как процесс построения таблицы запущен, мы должны построить те объекты, из которых будет состоять наша таблица. Такими объектами являются отрезки и строки.

Построение отрезков осуществляется с помощью метода ksLineSeg интерфейса ksDocument2D. Данный метод рассматривался в главе 8.

Для построения текстовых строк мы будем использовать метод ksText интерфейса ksDocument2D. Данный метод рассматривался в главе 7.

После  того,  как  все  необходимые  объекты  построены,  мы  должны

явным образом завершить построение таблицы. Для этого используется метод ksEndObj() интерфейса ksDocument2D. Данный метод не имеет входных параметров, и именно он, в случае успеха, возвращает идентификатор построенной таблицы. В случае же ошибки он возвращает значение нуль.

Пример

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

var

kompas: KompasObject; Document2D: ksDocument2D;

……………………

Begin

……………………

//Запускаем построение таблицы

Document2D.ksTable();

//Строим отрезки внешнего контура таблицы Document2D.ksLineSeg(100,100,100,130,1); Document2D.ksLineSeg(100,130,130,130,1); Document2D.ksLineSeg(130,130,130,100,1); Document2D.ksLineSeg(130,100,100,100,1);

//Строим отрезки между строками Document2D.ksLineSeg(100,110,130,110,1); Document2D.ksLineSeg(100,120,130,120,1);

//Строим отрезок между столбцами

Document2D.ksLineSeg(110,130,110,100,1);

//Выводим строки в первом столбце

Document2D.ksText(101,121, 0,5,0,0,’1′);

Document2D.ksText(101,111, 0,5,0,0,’2′);

Document2D.ksText(101,101, 0,5,0,0,’3′);

//Выводим строки во втором столбце Document2D.ksText(111,121, 0,5,0,0,’один’); Document2D.ksText(111,111, 0,5,0,0,’два’);

Document2D.ksText(111,101, 0,5,0,0,’три’);

//Завершаем построение таблицы

Document2D.ksEndObj();

kompas.Visible:=true;

end;

На рисунке ниже показан результат работы этой программы.

Источник: Норсеев Сергей, «РАЗРАБОТКА ПРИЛОЖЕНИЙ ПОД КОМПАС В DELPHI»

По теме:

  • Комментарии