第一步:下载wps相关文件 下载地址:
zouyf/wps - 码云 - 开源中国 (gitee.com)
第二步:将include里的文件放到自己的源码中
第三步:在.pro文件添加以下代码
exists(/opt/kingsoft/wps-office/office6/libstdc++.so.6){
system(ln -s /opt/kingsoft/wps-office/office6/libstdc++.so.6 libstdc++.so.6)
LIBS += libstdc++.so.6
}
QMAKE_LFLAGS += -Wl,--rpath=\'\$\$ORIGIN\':$$[QT_INSTALL_LIBS]:/opt/kingsoft/wps-office/office6
QMAKE_LIBDIR = ./ $$[QT_INSTALL_LIBS] /opt/kingsoft/wps-office/office6
greaterThan(QT_MAJOR_VERSION, 4){
LIBS += -lrpcwpsapi_sysqt5 -lrpcetapi_sysqt5 -lrpcwppapi_sysqt5
exists(/opt/kingsoft/wps-office/office6/libc++abi.so.1){
system(ln -sf /opt/kingsoft/wps-office/office6/libc++abi.so.1 libc++abi.so.1)
LIBS += libc++abi.so.1
}
}
else{
LIBS += -lrpcwpsapi -lrpcetapi -lrpcwppapi
}
INCLUDEPATH = . \
./et \
./wps \
./wpp \
./include/common \
./include/wps \
./include/wpp \
./include/et
第四步:将demo里的.h和.cpp添加到自己的代码,基于demo实例来修改功能
将这些文件放入自己的代码
第五步:在ui界面中添加一个tabWidget控件
第六步:在构造函数里实例化 wps的对象,并添加到ui中
m_wps = new WPSMainWindow(this);
ui->tabWidget_wps->addTab(m_wps, "WPS");
m_wps->slotButtonClick("初始化");
m_et=new EtMainWindow(this);
ui->tabWidget_wps->addTab(m_et, "EXL");
m_et->slotButtonClick("初始化");
m_wpp=new WPPMainWindow(this);
ui->tabWidget_wps->addTab(m_wpp, "WPP");
m_wpp->slotButtonClick("初始化");
第七步:此时以及可以调用wps提供的方法了
但由于客户端打开内部文件的功能需要重新写一个方法将文件地址传入:
et wpp 也可以同样的方式添加功能
第八步:调用
m_wps->filePath=path;//传入文件地址
m_wps->slotButtonClick("打开显示");
ui->tabWidget_wps->setCurrentIndex(0);
完成