日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

QT读取Word文档

發布時間:2025/3/15 c/c++ 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QT读取Word文档 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Word文檔讀取

開發工具與關鍵技術:QtCreator、C++ 作者:何任賢 撰寫時間:2020年06月02日

Word文檔讀取
我們先要在工程文件加入
QT += axcontainer
我們要用到的頭文件有
#include
#include
讀取word文檔基本流程:

  • 啟動Word進程、獲取Word文檔集。
  • 獲取和操作當前選中的段落。
    類聲明
    class Dialog : public QDialog
    {
    Q_OBJECT
    public:
    Dialog(QWidget *parent = 0);
    ~Dialog();
  • private slots:
    void readWord();

    private:
    QPushButton *writebtn;
    QPushButton *readbtn;
    QLineEdit *lineedit;

    必須要聲明的指針 QAxObject *myword; //Word應用程序指針 QAxObject *mydocs; //文檔集指針 QAxObject *mydoc; //文檔指針 QAxObject *selection; //Selection指針

    };

    下面是qt讀取word文檔函數實現
    void Dialog::readWord()
    {
    打開一個Word應用程序
    myword = new QAxObject(“Word.Application”);

    找到其Documents子對象,代表Word文檔集 mydocs = myword->querySubObject("Documents");

    獲取要讀取的word文檔的路徑。
    QString path = QDir::currentPath() + “/myWord.docx”;
    path = QDir::toNativeSeparators(path);

    打開一個Word文檔,這里調用的是Documents對象的open方法 mydocs->dynamicCall("Open(const QVariant&)",QVariant(path));獲取當前word文檔對象 mydoc= myword->querySubObject("ActiveDocument");這里是把word文檔的內容全部選中。 通過不帶參數的range方法選中整個文檔內容 selection = mydoc->querySubObject("Range()");然后獲取選中的word文檔內容 QString str = selection->property("Text").toString();lineedit->setText(str);關閉文檔 mydoc->dynamicCall("Close()"); delete mydoc; mydoc = NULL;退出程序 myword->dynamicCall("Quit()"); delete myword; myword = NULL;QMessageBox::information(this,tr("消息"),str);

    }
    下面是讀取結果

    總結

    以上是生活随笔為你收集整理的QT读取Word文档的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。