Russian Qt Forum

Qt => ActiveX => Тема начата: just_away от Декабрь 11, 2014, 22:14



Название: Qt Active background color in cell
Отправлено: just_away от Декабрь 11, 2014, 22:14
Приветствую всех.
Может кто подскажет как поменять цвет фона  ячейки в таблице документа ms word, используя COM объект QAxObject?

Доступ к ячейке (1, 1) получаю так:
 QAxObject *word = new QAxObject("Word.Application", this);
 QAxObject *document = word->querySubObject("Documents"); //получаем коллекцию документов
 QAxObject *ActiveDocument = document->querySubObject("Add()"); //добавляем свой документ в коллекцию
 word->setProperty("Visible", true);
QAxObject *range = ActiveDocument ->querySubObject("Range()");
    // создание таблицы
 QAxObject *tables = range->querySubObject("Tables()");
 QAxObject *table = tables->querySubObject("Add(Range,NumRows,NumColumns, DefaultTablesBehavior, AutoFitBehavior)",
                                              range->asVariant(), 3, 4, 1, 1);


    QAxObject* cell = table->querySubObject("Cell(Row, Column)", 1,1);
А дальше ни у ячейки, ни у параграфа, ни у таблицы.... нет свойства изменить цвет фона...
Может кто знает... при много благодарен!


Название: Re: Qt Active background color in cell
Отправлено: just_away от Декабрь 11, 2014, 23:06
Нашёл...

QAxObject* shading = cell->querySubObject("Shading");
shading->dynamicCall("SetBackgroundPatternColor(WdColor)", 255);