Cells в QT при работе с MS Office |
Здравствуйте, гость ( Вход | Регистрация )
Cells в QT при работе с MS Office |
abra |
24.3.2009, 19:27
Сообщение
#1
|
Студент Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: 2 |
Привет.
Здесь столкнулся с такой заботой. QAxObject *range = StatSheet->querySubObject( "Range(const QVariant&)",QVariant(QString("A1:B6"))); (выделяем диапозон для работы) QAxObject *range = StatSheet->querySubObject( "Range(const QVariant&)",QVariant(QString("A1"))) (выделяем 1 ячейку) QAxObject *range = StatSheet->querySubObject( "Cells(const QVariant&)",QVariant(QString("1"))) ( выделяем 1 ячейку(аналог Cells(1,1)) QAxObject *range = StatSheet->querySubObject( "Cells(const QVariant&)",QVariant(QString("2"))) (выделяем вторую ячейку (аналог Cells(1,2)) Но у меня есть таблица БД.В ней поля.СЛедовательно,должна соблюдаться структура при выводе данных в Эксель 1 поле 2 поле 3 поле 4 поле 5 поле Но!Как мне обратиться скажем к Cells(2,2)...или Cells(3,4)...Причем это обязательно нужно сделать через цифры (Cells(X,Y) (X,Y- целочисленные указатели на ячейки)) Потому что через A1 нельзя вызывать(в таком случае будет слишком мудрено вызываться ячейка B1) ________________________________________________________________________________ ____________________________________________ Хм...Ребят,подождите...Сейчас одна идейка возникла...Может написать QAxObject *range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(QString("2")),QVariant(QString("1"))) попробовать......... ________________________________________________________________________________ ______________________________________________ Не помогло........ QAxObject *range = StatSheet->querySubObject( "Cells(const QVariant&;const QVariant&)",QVariant(QString("4")),QVariant(QString("8"))); Пишет значение в ячейку D1(принял первый параметр равный 4) ((( Он почему то принимает только первый параметр,и всё......... Какие будут предложения? Сообщение отредактировал abra - 24.3.2009, 19:46 |
|
|
abra |
1.4.2009, 0:17
Сообщение
#2
|
Студент Группа: Участник Сообщений: 68 Регистрация: 12.1.2009 Пользователь №: 485 Спасибо сказали: 11 раз(а) Репутация: 2 |
Оу.Извините))))
Чот как то решил для себя проблему,описал вам её,так и не заходил больше. Я вот сейчас вплотную занимаюсь работой с MS Office под QT на высоком уровне.Вот сейчас сам ищу статьи,но в инете их нет,поэтому писать самому приходится. Для начала советую почитать вам вот это http://hardclub.donntu.edu.ua/projects/qt/...s/qt-excel.html Чтобы подключить библиотеку,вам необходимо в .pro файле (в каталоге с вашим проектом),дописать LIBS += -lqaxcontainer Ну теперь собственно приступаем к кодингу.
Здесь идёт работа с макросами MS Office. Скопировать данные из 1 ячейки в другую:
Работа со шрифтами.Дополнение:
Редактирование высоты,ширины строк или столбцов(вместо Rows указываем Columns,вместо RowHeight указываем ColumnWidth )
Объединение ячеек:
Вот еще сейчас покодил.Разрешает перенос:
Вот еще накодил)))) Устанавливает положение текста.
Я здесь напишу основные. Выравнивание по левому краю: -4131 Выравнивание по центру: -4108 Выравнивание по правому краю: -4152 Это для вертикального выравнивания:
Выравнивание по верхнему краю: -4160 Выравнивание по центру: -4108 Выравнивание по нижнему краю: -4107 Вот еще написал=))) Удаление\добавление строк
Удаление\добавление столбцов
Обещаная работа с границами ячеек =)))
Ну вот собственно на этом я наверно и завершу написание статьи по работе библиотеки QT c MS Office Excel. Далее задавайте вопросы,будем уже на конкретных примерах разбираться. )) Сообщение отредактировал Litkevich Yuriy - 5.2.2014, 16:40 |
|
|
Текстовая версия | Сейчас: 22.11.2024, 18:38 |