Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. QAxWidget does not open Word inside the widget
Forum Updated to NodeBB v4.3 + New Features

QAxWidget does not open Word inside the widget

Scheduled Pinned Locked Moved Unsolved General and Desktop
1 Posts 1 Posters 243 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • I Offline
    I Offline
    IknowQT
    wrote on last edited by
    #1
    void QMSTest::Initailize()
    {
        QAxWidget* pWord = new QAxWidget("Word.Application", this);
        //pWord->setControl("{00020900-0000-0000-C000-000000000046}");
    	//QAxObject* pWord = new QAxObject("Word.Application");
        //pWord->dynamicCall("SetVisible(bool)", false );
    
    	QAxObject* pDoc = pWord->querySubObject("Documents");
    	pDoc = pDoc->querySubObject("Add (void)");    
    
        // Title 생성
        {
            QAxObject* pTiltle = pDoc->querySubObject("Range()");
            pTiltle->dynamicCall("SetRange(int, int)", 0, 100);
            pTiltle->setProperty("Text", "Measure Summary");
            pTiltle->setProperty("Underline", "wdUnderlineThick");
    
            QAxObject* pFont = pTiltle->querySubObject("Font");
            pFont->setProperty("ColorIndex", "wdRed");
            //pFont->setProperty("ColorIndex", "RGB(16,63,156)");
            pFont->setProperty("Size", 25);
    
            pTiltle->dynamicCall("InsertParagraphAfter()");
    
            // Report Time, Operator 생성
            {
                QAxObject* pReportTime = pDoc->querySubObject("Range()");
                pReportTime->dynamicCall("SetRange(int, int)", 101, 200);
                pReportTime->setProperty("Text", "Report Time\t[Data]");
                pReportTime->setProperty("Underline", "wdUnderlineNone");
    
                pFont = pReportTime->querySubObject("Font");
                pFont->setProperty("ColorIndex", "wdBlue");
                pFont->setProperty("Size", 15);
    
                pReportTime->dynamicCall("InsertParagraphAfter()");
    
                QAxObject* pOperator = pDoc->querySubObject("Range()");
                pOperator->dynamicCall("SetRange(int, int)", 201, 300);
                pOperator->setProperty("Text", "Operator\t\t[Data]");
                pOperator->setProperty("Underline", "wdUnderlineNone");
    
                pFont = pOperator->querySubObject("Font");
                pFont->setProperty("ColorIndex", "wdBlue");
                pFont->setProperty("Size", 15);
    
                pOperator->dynamicCall("InsertParagraphAfter()");
            }
        }
    
        // Device Info
        {
            QAxObject* pDeviceInfo = pDoc->querySubObject("Range()");
            pDeviceInfo->dynamicCall("SetRange(int, int)", 301, 400);
            pDeviceInfo->setProperty("Text", "Device Info");
            pDeviceInfo->setProperty("Underline", "wdUnderlineThick");
    
            QAxObject* pFont = pDeviceInfo->querySubObject("Font");
            pFont->setProperty("ColorIndex", "wdRed");
            pFont->setProperty("Size", 25);
    
            pDeviceInfo->dynamicCall("InsertParagraphAfter()");
    
            // Instrument, Version, Temperator 생성
            {
                {
                    QAxObject* pInstrument = pDoc->querySubObject("Range()");
                    pInstrument->dynamicCall("SetRange(int, int)", 401, 500);
                    pInstrument->setProperty("Text", "Instrument\t\t\t[Data]");
                    pInstrument->setProperty("Underline", "wdUnderlineNone");
    
                    pFont = pInstrument->querySubObject("Font");
                    pFont->setProperty("ColorIndex", "wdBlack");
                    pFont->setProperty("Size", 15);
    
                    pInstrument->dynamicCall("InsertParagraphAfter()");
                }
    
                {
    				QAxObject* pVersion = pDoc->querySubObject("Range()");
    				pVersion->dynamicCall("SetRange(int, int)", 501, 600);
    				pVersion->setProperty("Text", "Instrument Version\t[Data]");
    				pVersion->setProperty("Underline", "wdUnderlineNone");
    
    				pFont = pVersion->querySubObject("Font");
    				pFont->setProperty("ColorIndex", "wdBlack");
    				pFont->setProperty("Size", 15);
                    
                    pVersion->dynamicCall("InsertParagraphAfter()");
                }
    
                {
    				QAxObject* pTemperature = pDoc->querySubObject("Range()");
    				pTemperature->dynamicCall("SetRange(int, int)", 601, 700);
    				pTemperature->setProperty("Text", "Temperature\t\t[Data]");
    				pTemperature->setProperty("Underline", "wdUnderlineNone");
    
    				pFont = pTemperature->querySubObject("Font");
    				pFont->setProperty("ColorIndex", "wdBlack");
    				pFont->setProperty("Size", 15);
                    
                    pTemperature->dynamicCall("InsertParagraphAfter()");
                }
            }
        }
    
        // Picture 
        {
            QString strPath("C:/Users/yhJeong/OneDrive/바탕 화면/POP_yhjeong/1.1.BMP");
            QAxObject* shapes = pDoc->querySubObject("InlineShapes");
            //QAxObject* chart = shapes->querySubObject("AddChart(int)", 74, 100, 100, 500, 800);
            //QAxObject* chart = shapes->querySubObject("AddChart(int)", 74, 100, 100, 500, 800);
            //pPicture->dynamicCall("AddPicture(QString,bool,bool,float,float,float,float)",
            //    strPath, true, true);
        }
    
    	// Table 생성
    	{
    		/*QAxObject* pTable = pDoc->querySubObject("Tables");
    		pTable->querySubObject("Add(Range, NumRows, NumCols, DefaultTableBehavior, AutoFitBehavior)",
    			pDoc->dynamicCall("Range()"), 3, 5, 1, 2);
    
    		pTable->setProperty("Text", "Print text Range.");*/
    	}
    
    	pWord->setProperty("Visible", true);
        //pWord->setProperty("DisplayAlerts", false);
       /* pWord->axWidget.setProperty('DisplayAlerts', False)
            pWord->axWidget.setControl(path)*/
    
        this->ui.horizontalLayout->addWidget(pWord);
    }
    

    0f5644b9-1e81-4dfc-855b-32375e249ca6-image.png

    In the word window, I print what I coded, but I want to see it in the widget without executing the word. What should I do?
    And I want to put the Qchart in the word, but I don't know what to do with this either.

    1 Reply Last reply
    0

    • Login

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Get Qt Extensions
    • Unsolved