Russian Qt Forum
Май 04, 2024, 00:41 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Форматировать Range (Excel)  (Прочитано 4777 раз)
Daniel
Гость
« : Октябрь 01, 2011, 18:12 »


В общем, есть объект Range. Единственное, что могу с ним сделать - это поместить в него значение(или считать):
Код:
range->setProperty("Value", value);

Нужно немного оформить табличку Экселя. Подскажите, пожалуйста, как хотя бы жирным сделать текст? Или фон ячейки поменять, или границы. Не могу найти как эти свойства называются.
Записан
CMorgan
Гость
« Ответ #1 : Октябрь 03, 2011, 15:17 »

Шрифт:
Код:
QAxObject *font = range->querySubObject("Font");

font->setProperty("Bold",FALSE);
font->setProperty("Italic",FALSE);
...
font->setProperty("Underline4",FALSE);

delete font;

Заливка ячейки цветом цвет передаем в виде QColor:
Код:
QAxObject *cells = range->querySubObject("Cells");				
QAxObject *interior = cells->querySubObject("Interior");

if(color.alpha()==0)
{
interior->setProperty("ColorIndex", -4142);
}
else
{
interior->setProperty("Color", color);
}

delete interior;
delete cells;

С границами примерно по тому же принципу.

Вообще берешь AxObject (к примеру, в твоем случае range) и пишешь для него
Код:
QFile outfile("C:/Temp/excel_range.html");
QTextStream out( &outfile );
outfile.open( QIODevice::WriteOnly| QIODevice::Text);
QString docu = range->generateDocumentation();
out << docu;
outfile.close();
Потом читаешь что там написано в файле все что с значениями   IDispatch* нужно получать через QAxObject *что-то интересующее = твой обьект ->querySubObject("что-то интересующее"); и для нового объекта снова генерить описание
Все остальное в общем случае через    setProperty - установить, property - прочитать.
Записан
Daniel
Гость
« Ответ #2 : Октябрь 03, 2011, 19:28 »

CMorgan, огромнейшее Вам спасибо, реально выручили!
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 20.