首先在.pro文件中添加CONFIG += qaxcontainer
接着程序实现
QString filepath=QFileDialog::getSaveFileName(this,tr("Save orbit"),".",tr("Microsoft Office 2007 (*.xlsx)"))//获取保存路径if(!filepath.isEmpty()){
QAxObject *excel = new QAxObject(this)
excel->setControl("Excel.Application")//连接Excel控件
excel->dynamicCall("SetVisible (bool Visible)","false")//不显示窗体
excel->setProperty("DisplayAlerts", false)//不显示任何警告信息。如果为true那么在关闭是会出现类似“文件已修改,是否保存”的提示
QAxObject *workbooks = excel->querySubObject("WorkBooks")//获取工作簿集合
workbooks->dynamicCall("Add")//新建一个工作簿
QAxObject *workbook = excel->querySubObject("ActiveWorkBook")//获取当前工作簿
QAxObject *worksheets = workbook->querySubObject("Sheets")//获取工作表集合
QAxObject *worksheet = worksheets->querySubObject("Item(int)",1)//获取工作表集合的工作表1,即sheet1
QAxObject *cellX,*cellY
for(int i=0i<curRowi++){
QString X="A"+QString::number(i+1)//设置要 *** 作的单元格,如A1
QString Y="B"+QString::number(i+1)
cellX = worksheet->querySubObject("Range(QVariant, QVariant)",X)//获取单元格
cellY = worksheet->querySubObject("Range(QVariant, QVariant)",Y)
cellX->dynamicCall("SetValue(const QVariant&)",QVariant(ui->tableWidget->formula(i,0).toInt()))//设置单元格的值
cellY->dynamicCall("SetValue(const QVariant&)",QVariant(ui->tableWidget->formula(i,1).toInt()))
}
workbook->dynamicCall("SaveAs(const QString&)",QDir::toNativeSeparators(filepath))//保存至filepath,注意一定要用QDir::toNativeSeparators将路径中的"/"转换为"\",不然一定保存不了。
workbook->dynamicCall("Close()")//关闭工作簿
excel->dynamicCall("Quit()")//关闭excel
delete excel
excel=NULL
}
QT/QML添加程序图标的方法
使用QT/QML实现的程序需要加入app图标的方法:
1. 制作ICON格式图标,其他格式的图片可以通过ICON转换工具转换;
2. 项目文件加入(.pro) RC_ICONS = app.ico, app.ico就是app图标的名字;
3. qmake->重新构建->运行。
https://www.cnblogs.com/gusseMe/articles/5444284.html
1)首先在程序的源码文件夹下边建立一个存放资源文件(比如图片)的文件夹.
建立资源文件夹的位置不要选错了。
2)然后在右键当前项目,然后选"择添加新文件"
3)然后选择"Qt资源文件"
4)然后输入资源文件的名字(以.qrc后缀结尾)
建立好资源文件之后,就为资源文件添加“前缀”
5)然后把这个前缀修改为/
6)接下来就说往其中添加图片了(静态的我一般添加为png)
7)添加好资源图片的样子
8)使用资源图片,主要是路径
newAction->setIcon(QIcon(":/images/new.png"))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)