Таблица головоломка

Статус
Закрыто для дальнейших ответов.

Strizh

Топикстартер
15 лет на форуме
Сообщения
982
Реакции
92
Уважаемые знатоки, вопрос задает Сергей из Германии.

Имеем связку из текстовых фреймов. (скажем 5)!
Заполнена одной длинной таблицей. (количество колонок роли не играет, а строк скажем 500)!
Header и Footer Rows не используются.

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

Vissarion

Участник
Сообщения
8
Реакции
0
Ответ: Таблица головоломка

Тыкаем внутрь таблицы и запускаем скрипт
Код:
switch (app.selection[0].constructor.name){
 case "InsertionPoint": var myTable = app.selection[0].parent.parent; break;
 case "Text": var myTable = app.selection[0].parent.parent; break;
 case "Word": var myTable = app.selection[0].parent.parent; break;
 case "Character": var myTable = app.selection[0].parent.parent; break;
 case "Cell": var myTable = app.selection[0].parent; break;
 case "Table": var myTable = app.selection[0]; break;
}

if (myTable){
 var myRows = myTable.rows
 var myLim = myRows.length - myTable.footerRowCount;
 var myPrevTF = myTable.rows[myTable.headerRowCount].cells[0].texts[0].parentTextFrames[0];
 var firstRow = myTable.headerRowCount;
 for (var j = myTable.headerRowCount; myLim > j; j++) {
 // гуляем по строчкам

 myCurTF = myRows[j].cells[0].texts[0].parentTextFrames[0];
 if ((myCurTF == myPrevTF) && (j != myLim - 1))
 {
 continue;
 }else{
 //Перекрашиваем все первые строчки
 myTable.rows[j].fillColor = app.documents[0].swatches.item("C=75 M=5 Y=100 K=0");
 }
 myPrevTF = myCurTF;
 }
}
Я выиграл, господин Крюк?
 

ssyabr

Участник
Сообщения
48
Реакции
0
Ответ: Таблица головоломка

Немного неправильно ;-) , но за идею спасибо!!!
 

Oleg Butrin

20 лет на форуме
Сообщения
1 989
Реакции
1 213
Ответ: Таблица головоломка

Примитивный вопрос, чесслово. Никаких перекрашиваний не нужно - от лукавого это. Перебор с проверкой parentTextFrames[0] спасут гражданина братской ГДР.
 

Vissarion

Участник
Сообщения
8
Реакции
0
Ответ: Таблица головоломка

Oleg Butrin сказал(а):
Примитивный вопрос, чесслово. Никаких перекрашиваний не нужно - от лукавого это. Перебор с проверкой parentTextFrames[0] спасут гражданина братской ГДР.

Ну ежу ясно, что перекрашивать не нужно.
Строчки на которых идёт разрыв фрейма добавляются в массив или куда там.
Перекрашивание сделал чтобы визуально показать, что скрипт работает как надо.
 
Статус
Закрыто для дальнейших ответов.