crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V   1 2 3 >  
Ответить в данную темуНачать новую тему
> Работа с QT4 и MS Office Excel, Проблема с библиотекой.Ответа не нашел.Нужна помощь.
abra
  опции профиля:
сообщение 22.3.2009, 13:57
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 68
Регистрация: 12.1.2009
Пользователь №: 485

Спасибо сказали: 11 раз(а)




Репутация:   2  


Ребята!Всем привет!
Вопрос значит заключается в следующем.Есть коммерческая версия QT.
qt-win-commercial-src-4.4.2
Кодю в QTCreator.
Необходимо вывести данные в Excel.
Прочитал инфу,о том,как это делается.Разобрался впринцепи,но когда начал компилировать,выдалось море ошибок.Не могу разобраться,почему.Примерно понял,что дело в библиотеке вроде,либо в её не собранности...Нужна помощь.

Вообщем код вот такой(вешается на обработчик кнопки):

#include <ActiveQt/qaxobject.h>

void MainWindow::on_pushButton_clicked()
{
    QAxObject* excel = new QAxObject( "Excel.Application", this );
    excel->dynamicCall( "SetVisible(bool)", TRUE );
    QAxObject *workbooks = excel->querySubObject( "Workbooks" );
    QAxObject *workbook = workbooks->querySubObject( "Open(const QString&)", "C:\\data\\A.xls" );
    QAxObject *sheets = workbook->querySubObject( "Sheets" );
    QAxObject *StatSheet = sheets->querySubObject( "Item(const QVariant&)", QVariant("stat") );
    StatSheet->dynamicCall( "Select()" );
    QAxObject *range = StatSheet->querySubObject( "Range(const QVariant&)", QVariant( QString("A1:A1")));
    range->dynamicCall( "Clear()" );
    range->dynamicCall( "SetValue(const QVariant&)", QVariant(5));
}


При компиляции выдаются ошибки(на каждую строку,вот такого содержания)
C:/q/1/mainwindow.cpp:19: undefined reference to `QAxObject::QAxObject(QString const&, QObject*)'
C:/q/1/mainwindow.cpp:20: undefined reference to `QAxBase::dynamicCall(char const*, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&)'
C:/q/1/mainwindow.cpp:21: undefined reference to `QAxBase::querySubObject(char const*, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&)'


Ну и вообщем так далее,на каждую строку.
Причина редактирования: пользуйся тэгом code
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 22.3.2009, 14:04
Сообщение #2


Мастер
******

Группа: Модератор
Сообщений: 3291
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Читал: Каркас ActiveQt?

Там описано как собирать и где. И настройки проекта в зависиомсти от того, что нужно.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abra
  опции профиля:
сообщение 22.3.2009, 14:08
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 68
Регистрация: 12.1.2009
Пользователь №: 485

Спасибо сказали: 11 раз(а)




Репутация:   2  


Да,тему видел эту,поэтому и подумал,что может библиотека не собрана...
Значит дело в этом,да?И еще вопрос.Не смейся только,я новичок=))А как узнать,собрана она,или нет=)
Просто у меня в директории ActiveQt лежат файлы то эти все....Они там есть.Или все же еще раз надо сделать всё это?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abra
  опции профиля:
сообщение 22.3.2009, 14:56
Сообщение #4


Студент
*

Группа: Участник
Сообщений: 68
Регистрация: 12.1.2009
Пользователь №: 485

Спасибо сказали: 11 раз(а)




Репутация:   2  


Там в папке Lib должны появиться именно эти библиотеки для сишки что ли???
Потому что там есть у меня QAxContainer.prl
Это для пёрла я так понимаю...Кстати.Там написано,что qmake запустить,своим make-инсталлятором...
У меня в папке activeqt нет qmake файла.
Где можно почитать про сбор библиотек,или опишите пожалуйста по шагам здесь,чтоб 1 раз и навсегда понять,как это делается.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
SABROG
  опции профиля:
сообщение 22.3.2009, 15:01
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1207
Регистрация: 8.12.2008
Из: Russia, Moscow
Пользователь №: 446

Спасибо сказали: 229 раз(а)




Репутация:   34  


Приблизительно так:

Цитата
cd $QTDIR/src/activeqt
qmake
nmake
cd $QTDIR/tools/activeqt
qmake
nmake
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abra
  опции профиля:
сообщение 22.3.2009, 15:39
Сообщение #6


Студент
*

Группа: Участник
Сообщений: 68
Регистрация: 12.1.2009
Пользователь №: 485

Спасибо сказали: 11 раз(а)




Репутация:   2  


Мне под виндой...Это куда писать???
CMD???
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 22.3.2009, 17:15
Сообщение #7


Мастер
******

Группа: Модератор
Сообщений: 3291
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Цитата(abra @ 22.3.2009, 14:08) *
Не смейся только,я новичок=))
Тут ничего смешного нет, все мы когда-то и чему-то учились или учимся. ;)


Цитата(abra @ 22.3.2009, 14:56) *
Там в папке Lib должны появиться именно эти библиотеки для сишки что ли???
Именно так. Там должны появится дополнительно к *.prl файлы *.dll и *.lib.

Цитата(abra @ 22.3.2009, 15:39) *
Мне под виндой...Это куда писать???
CMD???
Да в cmd, причем в той, которая "знает" пути к lib и include. Для VS используй ее CMD для mingw смотри: Сборка Qt с использованием MinGW32 и по аналогии собирай...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 22.3.2009, 17:20
Сообщение #8


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(abra @ 22.3.2009, 17:56) *
Потому что там есть у меня QAxContainer.prl
Это для пёрла я так понимаю..
нет, открой файл в текстовом редакторе у видишь, что там.

Цитата(abra @ 22.3.2009, 17:56) *
У меня в папке activeqt нет qmake файла.
он лежит в %QTDIR%\bin и предназначен для создания make-файлов на основе фалов проекта qmake (*.pro)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abra
  опции профиля:
сообщение 23.3.2009, 0:41
Сообщение #9


Студент
*

Группа: Участник
Сообщений: 68
Регистрация: 12.1.2009
Пользователь №: 485

Спасибо сказали: 11 раз(а)




Репутация:   2  


Что то тяжеловато...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
abra
  опции профиля:
сообщение 23.3.2009, 1:17
Сообщение #10


Студент
*

Группа: Участник
Сообщений: 68
Регистрация: 12.1.2009
Пользователь №: 485

Спасибо сказали: 11 раз(а)




Репутация:   2  


Не получилось у меня,как вы описали...Может,стоит написать,как "БЛОНДИНКЕ"................))))Просто здесь всё настолько тонко видимо,что просто это надо увидеть,как делается.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

3 страниц V   1 2 3 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 31.3.2020, 3:45