Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Выделение ячеек таблицы в Word`e 
:(
    Опции темы
M9IC
Дата 3.4.2009, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 20.12.2007

Репутация: нет
Всего: нет



Есть программа Х, которая что-то считает и выгружает данные в ВОРД.

Код

class WordRep{
private:
    _ApplicationPtr    m_pApp;
    _DocumentPtr    m_pDoc;
    TablePtr        m_pTable; // последняя вставленная в докупент таблица
    SelectionPtr    m_pSelection; // Текущее выделение
public:
            SetText( ... );
            ConvertToTable( ... );
            ...
};


Понадобилось добавить функцию, редактирующую стили границ ячеек:
Код

void WordRep::SetBorders( UINT Left, UINT Top, UINT Right, UINT Bottom )
{
//Самое простое я могу оббежать каждую конкретно ячейку и вытавить в ней параметры (так реализовано сейчас), вот примерно так:
     Начало цикла ...
    m_pTable->Cell( row, col )->Borders->Item( wdBorderVertical )->PutLineStyle( (WdLineStyle) VerticalBorderStyle );
    m_pTable->Cell( row, col )->Borders->Item( wdBorderLeft )->PutLineStyle( (WdLineStyle) LeftBorderStyle);
    m_pTable->Cell( row, col )->Borders->Item( wdBorderTop )->PutLineStyle( (WdLineStyle) TopBorderStyle);
    m_pTable->Cell( row, col )->Borders->Item( wdBorderRight )->PutLineStyle( (WdLineStyle) RightBorderStyle);
    m_pTable->Cell( row, col )->Borders->Item( wdBorderBottom )->PutLineStyle( (WdLineStyle) BottomBorderStyle);
    конец цикла

//А можно как нибудь задать сразу нужный мне диапазон  ? Чтоб получилось что-то типа:
    m_pTable->ВыделитьДиапазонЯчеек(  Left,  Top,  Right,  Bottom  );
    m_pTable->Range->Borders->Item( wdBorderLeft )->PutLineStyle( (WdLineStyle) LeftBorderStyle); 
// и изменение применится ко всему нужному мне диапазону сразу и не надо оббегать каждую ячейку.

//Сейчас я могу сделать так:
    m_pTable->Range->Select();
    m_pSelection->Borders->Item( wdBorderLeft )->PutLineStyle( (WdLineStyle) LeftBorderStyle);
// Но тогда изменение применяется ко всей таблице целиком, а мне нужны некоторые конуретные ячейки, 
// например есть таблица 5 на 5, и я хочу сделать границу ячеек находящихся в середине жирнее.

}




PM MAIL   Вверх
mihanik
Дата 5.4.2009, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 9
Всего: 109



Классно!
 smile 

А в чём проблема?
Вопрос-то где?
 smile 



--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
M9IC
Дата 6.4.2009, 07:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 20.12.2007

Репутация: нет
Всего: нет



Вопрос в комментах в коде.
Вопрос заключается в том, как мне выделить произвольный диапазон я чеек в таблице и потом менять его свойства? А не пробегать каждую ячейку .
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0439 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.