如何使用Qt *** 作word,实现插入图片和表格的功能?

如何使用Qt *** 作word,实现插入图片和表格的功能?,第1张

*** 作word的步骤:1
新建一个文件,在绘制好的表格需要插入数据的地方设置书签(插入-书签),另存为模版文件
(dot)。
2新建一个Qt工程,在main文件中如下定义:#include<QtGui/QApplication#include<QAxWidget#include<QAxObjectintmain(intargc,
charargv[]){QApplicationapp(argc,
argv);//新建一个word应用程序,并设置为可见QAxWidgetword=newQAxWidget(WordApplication,0,Qt::MSWindowsOwnDC);word-setProperty(Visible,
true);//获取所有的工作文档QAxObjectdocuments=word-querySubObject(Documents);//以文件templatedot为模版新建一个文档
documents-dynamicCall(
Add(QString),
QString::fromLocal8Bit(
D:/templatedot));//获取当前激活的文档QAxObjectdocument=word-querySubObject(
ActiveDocument);//获取文档中名字为text的标签QAxObjectbookmark_text=document-querySubObject(
Bookmarks(QVariant),
code);//选中标签,将字符InsertText插入到标签位置if(!bookmark_text-isNull()){
bookmark_text-dynamicCall(
Select(void));bookmark_text-querySubObject(Range)-setProperty(Text,
InsertText);}//获取文档中名字为pic的标签QAxObjectbookmark_pic=document-querySubObject(
Bookmarks(QVariant),
code);//选中标签,将插入到标签位置if(!bookmark_pic-isNull()){
bookmark_pic-dynamicCall(
AddPicture(void));bookmark_pic-querySubObject(Range)-setProperty(
InlineShape,
D:/waittinggif);}//将文件另存为docbyqtdoc,关闭工作文档,退出应用程序

Qt软件支持使用Notepad来编辑文件。你可以在Qt中打开想要修改的文件,然后在右侧的“文件夹”中点击上方的“打开方式”,选择“用Notepad打开”,即可使用Notepad来编辑这个文件。

1、安装Qt5
Qt5的安装比Qt4的安装简单多了,我装的是Qt54(qt-opensource-windows-x86-mingw491_opengl-540exe),它集成了MinGW、Qt Creator等,不需要你再单独下载MinGW和Qt Creator。
首先,去Qt官网下载资源:qt-opensource-windows-x86-mingw491_opengl-540exe;然后,双击安装即可。安装后,“开始”菜单

2、配置Qt
打开Qt Creator,工具–>选项,打开“选项”对话框
若没有检测出,则添加相应的Qt版本和编译器(MinGW),再设置构建套件(Kits):设备类型、编译器(MinGW)、调试器、Qt版本
3、使用Qt
打开Qt Creator,新建项目–>其他项目–>空的qmake项目,项目命名为“QtTest”,再添加新文件maincpp。
在maincpp中添加如下代码:
#include<QApplication>
#include<QVBoxLayout>
#include<QLabel>
#include<QPushButton>
int main(int argc,char argv[])
{
QApplication app(argc,argv);
QWidget window = new QWidget;
window->setWindowTitle("QtTest");
//QLabel label= new QLabel("Hello Qt");
QLabel label = new QLabel("<h2><i>Hello</i>"" <font color = red>Qt</font><h2>");
QPushButton button=new QPushButton("Quit");
QObject::connect(button,SIGNAL(clicked()),&app,SLOT(quit()));
QVBoxLayout layout=new QVBoxLayout;
layout->addWidget(label);
layout->addWidget(button);
window->setLayout(layout);
window->show();
return appexec();
}
此时,代码显示如下错误:
运行时错误提示:#include<QApplication>–No such file……
实际上,QT5中很多常用的QT头文件都被移到core gui widgets 等模块中去了,在QT5中,pro文件需要增加额外的一行(注意大小写):
QT += core gui widgets
其中Qt += core gui widgets 表示链接QtCore(d)dll、QtGui(d)dll、QtWidgets(d)dll。
我们在pro文件中增加一行上述代码,保存,再双击打开cpp文件,此时错误提示线消失,运行,结果

一:工程里使用后缀为qrc的资源文件:比如 资源文件里的内容为:<RCC<qresource<file alias="configfile1"/usr/configurefile1xml</file<file alias="configfile2"test/configurefile2xml</file<filetest/configurefile3xml</file</qresource</RCC(其中test是在工程执行文件所在路径下的一个文件夹)这样在程序中:QFile file1(":/configfile1");QFile file2(":/configfile2");QFile file3(":/test/configurefile3xml");file1open(QFile::ReadOnly);file2open(QFile::ReadOnly);file3open(QFile::ReadOnly);上述三条打开文件的 *** 作都可以成功打开对应文件,但是如果在资源文件里 如果对某个文件的引用里加了alias别名的 *** 作,比如QFile file2(":/test/configurefile2xml");file2open(QFile::ReadOnly);将打开文件失败。QT里:/表示对资源的引用,不是表示当前目录


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/10542530.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-09
下一篇2023-05-09

发表评论

登录后才能评论

评论列表(0条)

    保存