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

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

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

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

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

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

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

Количество строк в тексте

Автор Wiscont, 22.04.18, 19:48:15

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

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

Wiscont

22.04.18, 19:48:15 Последнее редактирование: 22.04.18, 20:44:14 от Wiscont
CBuilder
Пытаюсь получить количество строк в тексте на чертеже
   
    reference obj;
    // Структура параметров текста
    ksTextParam* textPar = (ksTextParam*)kompas->GetParamStruct( ko_TextParam );
    // Структура параметров строки текста
    ksTextLineParam* linePar = (ksTextLineParam*)kompas->GetParamStruct( ko_TextLineParam );
    // Структура параметров компоненты строки текста
    ksTextItemParam* itemPar = (ksTextItemParam*)kompas->GetParamStruct( ko_TextItemParam );
    //Инициализировать параметры
    linePar->Init();
    itemPar->Init();

    //в текущем документе и виде создадим итератор для хождения по всем элементам
    ksIterator * iter = (ksIterator*)kompas->GetIterator();
    if ( iter->ksCreateIterator( ALL_OBJ, 0 ) ) {
    obj = iter->ksMoveIterator( StringToOleStr("F") );
    if ( doc->ksExistObj( obj ) && doc->ksGetObjParam( obj, 0, 0 ) == 4){
      do {

     doc->ksGetObjParam( obj, textPar, ALLPARAM );  // Тип параметра объекта ALLPARAM  - все параметры объекта

     ksDynamicArray* arr = (ksDynamicArray*)textPar->GetTextLineArr();

     int count = arr->ksGetArrayCount();

На выходе имею 0 строк (

Wiscont

22.04.18, 20:05:51 #1 Последнее редактирование: 22.04.18, 20:56:35 от Wiscont
     doc->ksGetObjParam( obj, textPar,  ALLPARAM );
     ksDynamicArray* itemArr = (ksDynamicArray*)textPar->GetTextLineArr();
     int count = itemArr->ksGetArrayCount();
:)