• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

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

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

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

Автор The_Prophet, 12.05.16, 21:35:34

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

The_Prophet

Возникла одна задача: необходимо программно создать в текстовом документе КОМПАСа таблицу с заполненными полями.
Создаю текстовый документ функцией CreateTextDocument.
Затем через интерфейс IText методом AddTable создаю таблицу.
Каким образом можно программно записать в неё данные?


The_Prophet

Цитата: Sabahs от 12.05.16, 21:45:56
Воспользоваться поиском по форуму, одна из тем.
http://forum.ascon.ru/index.php/topic,24881.msg180076.html#msg180076
В том примере описывается случай создания таблицы для 2D документа, в текстовом документе КОМПАС он не работает.


The_Prophet

Цитата: Sabahs от 13.05.16, 06:59:12
Вы тему внимательно читали?
Можете ещё раз перечитать, с этого места http://forum.ascon.ru/index.php/topic,24881.msg191325.html#msg191325
Тему я всю прочитал, но того, что мне нужно, там нет. Вы получаете таблицу в 2D документе, через интерфейс видов и т.д., в текстовом документе интерфейс вида получить нельзя. Вот пример создания таблицы в текстовом документе:

IKompasDocumentPtr komDoc = application->GetActiveDocument();
ITextDocumentPtr textDoc (komDoc);
ITextPtr text = textDoc->GetText();
ITextTablePtr textTable = text->AddTable(1, 2, 3, 20, 50, ksTTLFirstRow);

У интерфейса ITextTable нельзя получить ни ячейки, ни чего то подобного. Так каким образом в такую таблицу можно записать данные или это не реализовано в API?

От ITextTable получаю ITable, далее ITableCell, затем текст и его компоненты всё меняется, но обновить таблицу ITextTable или ITable не получается, нет у них метода Update, а к чему не преобразовывал, ни к чему не хотят, короче нужно сидеть играться, а на это пока времени нет.
ITextDocument.Update ничего не даёт.
+ Благодарностей: 1

The_Prophet

Цитата: Sabahs от 19.05.16, 07:43:46
От ITextTable получаю ITable, далее ITableCell, затем текст и его компоненты всё меняется, но обновить таблицу ITextTable или ITable не получается, нет у них метода Update, а к чему не преобразовывал, ни к чему не хотят, короче нужно сидеть играться, а на это пока времени нет.
ITextDocument.Update ничего не даёт.

Вот и я на этом же застрял. В итоге создал таблицу сначала в 2D документе, а потом уже вставил её в текстовый.
+ Благодарностей: 1