提示这个,为什么找不到这个呀
ui_qaxselect.h: No such file or directory
#ifndef QT_NO_WIN_ACTIVEQT
#include "ui_qaxselect.h""
#endif
- CSS code
#include <QtGui> #include <QAxObject> #include <QAxWidget> #include <qaxselect.h> int main(int argc, char **argv) { QApplication a(argc, argv); QAxSelect select; select.show(); QAxWidget excel("Excel.Application"); excel.setProperty("Visible", true); QAxObject * workbooks = excel.querySubObject("WorkBooks"); workbooks->dynamicCall("Open (const QString&)", QString("c:/test.xls")); QAxObject * workbook = excel.querySubObject("ActiveWorkBook"); QAxObject * worksheets = workbook->querySubObject("WorkSheets"); int intCount = worksheets->property("Count").toInt(); for (int i = 1; i <= intCount; i++) { int intVal; QAxObject * worksheet = workbook->querySubObject("Worksheets(int)", i); qDebug() << i << worksheet->property("Name").toString(); QAxObject * range = worksheet->querySubObject("Cells(1,1)"); intVal = range->property("Value").toInt(); range->setProperty("Value", QVariant(intVal+1)); QAxObject * range2 = worksheet->querySubObject("Range(C1)"); intVal = range2->property("Value").toInt(); range2->setProperty("Value", QVariant(intVal+1)); } QAxObject * worksheet = workbook->querySubObject("Worksheets(int)", 1); QAxObject * usedrange = worksheet->querySubObject("UsedRange"); QAxObject * rows = usedrange->querySubObject("Rows"); QAxObject * columns = usedrange->querySubObject("Columns"); int intRowStart = usedrange->property("Row").toInt(); int intColStart = usedrange->property("Column").toInt(); int intCols = columns->property("Count").toInt(); int intRows = rows->property("Count").toInt(); for (int i = intRowStart; i < intRowStart + intRows; i++) { for (int j = intColStart; j <= intColStart + intCols; j++) { QAxObject * range = worksheet->querySubObject("Cells(int,int)", i, j ); qDebug() << i << j << range->property("Value"); } } excel.setProperty("DisplayAlerts", 0); workbook->dynamicCall("SaveAs (const QString&)", QString("c:/xlsbyqt.xls")); excel.setProperty("DisplayAlerts", 1); workbook->dynamicCall("Close (Boolean)", false); excel.dynamicCall("Quit (void)"); return a.exec(); }
------解决方案--------------------
你使用了设计器设计窗体在编译的时候会产生相应的ui_窗体文件名.h文件,如果没有产生可以仔细检查一下,看是否有包含顺序或者其他小细节错误,希望可以帮到你!
------解决方案--------------------
------解决方案--------------------
楼主,这个ui_qaxselect.h的问题你解决了没呢?我现在也遇到同样的问题,,,求答案!先谢谢了
------解决方案--------------------
这个好像是这样子的,在designer里绘制好界面之后,编译一次就会自动生成ui_XXX.h文件,使用creator的话默认是出现在XXXX-build-desktop文件夹下的,你可以把鼠标放在#include “ui_XXX.h”上看一下包含路径,看对不对。还有就是ui_XXX.h文件也可以手动生成,就是在designer里绘制好之后点查看源码,复制出来就行了。
另外最新版的qt sdk添加ui界面之后会自动添加一个类来初始化ui界面,应该不会出现上述问题。