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

Автор 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();
:)