QT Word文档控件QAxWidget C++退出

我们知道每次加载word控件,都会导致后台启动一个WINWORD.EXE

如何安全退出呢

1、一个最简单的例子

QT       += core gui axcontainer

MainWindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>
#include <QAxWidget>
#include <QAxObject>QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACEclass MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private:Ui::MainWindow *ui;QAxWidget *m_ax = nullptr;QAxObject *m_wordApp = nullptr;QAxObject *m_document = nullptr;// QWidget interface
protected:virtual void resizeEvent(QResizeEvent *event) override;
};#endif // MAINWINDOW_H

MainWindow.cpp

#include "MainWindow.h"
#include "ui_MainWindow.h"
#include <QAxObject>MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);m_ax = new QAxWidget(this);m_ax->setControl("D:\\1.docx");m_wordApp = m_ax->querySubObject("Application");m_document = m_wordApp->querySubObject("Documents(int index)", 1);m_document->dynamicCall("Activate()");
}MainWindow::~MainWindow()
{delete ui;m_ax->clear();m_document->dynamicCall("Close()");m_wordApp->dynamicCall("Quit()");
}void MainWindow::resizeEvent(QResizeEvent *event)
{if (m_ax != nullptr){QRect rc = rect();m_ax->setGeometry(0, 0, rc.width(), rc.height());}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/394051.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【强化学习的数学原理】课程笔记--6(Actor-Critic方法)

目录 Actor-Critic 方法QAC 算法Advantage Actor-Critic 算法Baseline invariance Off-policy Actor-Critic重要性采样 Deterministic Policy Gradient (DPG) 系列笔记&#xff1a; 【强化学习的数学原理】课程笔记–1&#xff08;基本概念&#xff0c;贝尔曼公式&#xff09; …

Java哈希算法

哈希算法 哈希算法1.概述2.哈希碰撞3.常用的哈希算法4.哈希算法的用途4.1校验下载文件4.2存储用户密码MD5加密5.SHA-1加密小结&#xff1a; 哈希算法 1.概述 哈希算法&#xff08;Hash&#xff09;又称摘要算法&#xff08;Digest&#xff09;&#xff0c;它的作用是&#xf…

[软件测试·研究向] MuJava 工具遇到的问题汇总和体会

MuJava 是初学者&#xff08;研究向&#xff09;常常会去使用的一个工具&#xff0c;也是 Java 软件测试的一个老牌工具。用于为 Java 代码生成变异体和运行单元测试。但是此工具已经有十年没有更新了&#xff0c;这款软件可以说现在已经不能够支持对主流软件框架运行测试。但是…

软考-软件设计师 (计算机组成和体系结构习题)

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 非常期待和您一起在这个小…

优秀的行为验证码的应用场景与行业案例

应用场景 登录注册 &#xff1a; 验证码适用于App、Web及小程序等用户注册场景&#xff0c;可以抵御自动机恶意注册&#xff0c;垃圾注册、抵御撞库登录、暴力破解、验证账号敏感信息的修改&#xff0c;同时可以有效阻止撞库攻击&#xff0c;从源头进行防护&#xff0c;保障正…

ip地址冲突会影响整个网络吗

在数字化时代&#xff0c;网络已成为连接世界的桥梁&#xff0c;而IP地址则是这座桥梁上不可或缺的“门牌号”。然而&#xff0c;当这个独特的身份标识出现冲突时&#xff0c;整个网络的稳定运行将面临严峻挑战。IP地址冲突&#xff0c;这一看似微小的技术问题&#xff0c;实则…

【电路笔记】-无源衰减器

无源衰减器 文章目录 无源衰减器1、概述2、简单衰减器3、无源衰减器示例14、无源衰减器设计5、切换式衰减器6、总结无源衰减器是一种特殊类型的电气或电子双向电路,由完全电阻元件组成。 1、概述 无源衰减器基本上是两个端口电阻网络,旨在将电源提供的功率削弱或“衰减”(因…

递归深度问题和尾调用的关系

当我们在编写计算阶乘的函数&#xff0c;一般我们都会会选择使用迭代或递归的方法来实现。下面就让我们看看&#xff0c;同一个函数的两种实现方法。首先&#xff0c;是使用迭代方式实现的函数&#xff0c;我们使用循环的方式来计算阶乘&#xff1a; // 阶乘函数&#xff0c;计…

java之多线程篇

一、基本概念 1.什么是线程&#xff1f; 线程就是&#xff0c;操作系统能够进行运算调度的最小单位。它被包含在进程之中&#xff0c;是进程中的实际运作单位。简单理解就是&#xff1a;应用软件中互相独立&#xff0c;可以同时运行的功能 2.什么是多线程&#xff1f; 有了多线…

无人机之飞行控制系统篇

一、飞行控制系统组成 包括惯性测量单位、GPS接收机、气压高度计、空速计等传感器&#xff0c;以及飞控计算机、伺服作动器等设备。 二、飞行控制原理 通过传感器实时感知无人机的飞行状态&#xff0c;将数据传输给飞控计算机进行处理&#xff0c;计算机再根据预设的飞行计划和…

13-按键的元件模型创建

1.画线的时候&#xff0c;栅格切为10mil 2.放置管脚的时候&#xff0c;栅格切为100mil

开发框架DevExpress XAF v24.2产品路线图预览——增强跨平台性

DevExpress XAF是一款强大的现代应用程序框架&#xff0c;允许同时开发ASP.NET和WinForms。XAF采用模块化设计&#xff0c;开发人员可以选择内建模块&#xff0c;也可以自行创建&#xff0c;从而以更快的速度和比开发人员当前更强有力的方式创建应用程序。 DevExpress XAF是一…

LLaMA- Adapter V2: Parameter-Efficient Visual Instruction Model

发表时间&#xff1a;28 Apr 2023 论文链接&#xff1a;https://arxiv.org/pdf/2304.15010 作者单位&#xff1a; Shanghai Artificial Intelligence Laboratory Motivation&#xff1a;如何有效地将大型语言模型 (LLM) 转换为指令追随者最近是一个流行的研究方向&#xff0…

Linux基于centOS7【内存与OS的随谈】,进程初学【PCB】【fork】【进程排队】

冯诺依曼体系结构——存储器 存储器主要指的是内存&#xff0c;它有个特点就是掉电易失 磁盘等其它输入和输出设备 为什么要在计算机体系结构中要存在内存 我们知道&#xff0c;CPU的处理速度很快很快&#xff0c;但输入设备&#xff0c;以及输出设备&#xff0c;是相对很慢的…

sql注入靶场搭建

1.安装小皮面板&#xff08;PhpStudy&#xff09; 1.从官网下载&#xff1a;http://www.xp.cn 2、Sqli-labs环境安装 准备好sqli-labs-php7-master文件 3.安装之前确保本地没有下载mysql服务器 如果电脑下载了MySQL可以把MySQL的服务停掉 此电脑>右键>管理>服务…

QModbus例程分析

由于有一个Modebus上位机的需要&#xff0c;分析一下QModbus Slave的源代码&#xff0c;方便后面的开发。 什么是Modbus Modbus是一种常用的串行通信协议&#xff0c;被广泛应用于工业自动化领域。它最初由Modicon&#xff08;目前属于施耐德电气公司&#xff09;于1979年开发…

C++:vector容器

概览 std::vector是C标准模板库(STL)中的一种动态数组容器。它提供了一种类似于数组的数据结构&#xff0c;但是具有动态大小和更安全的内存管理。 定义和基本特性 std::vector是C标准库中的一 个序列容器&#xff0c;它代表了能够动态改变大小的数组。与普通数组一样&#x…

模拟面试题1

目录 一、JVM的内存结构&#xff1f; 二、类加载器分为哪几类&#xff1f; 三、讲一下双亲委派机制 为什么要有双亲委派机制&#xff1f; 那你知道有违反双亲委派的例子吗&#xff1f; 四、IO 有哪些类型&#xff1f; 五、Spring Boot启动机制 六、Spring Boot的可执行…

关于儿童编程语言

青少年通常会通过Scratch或Python开始学习编程。在这两种语言中&#xff0c;代码的编写&#xff08;或者在Scratch中是构建&#xff09;方式类似于英语&#xff0c;这使得初学者更容易学习。Scratch的一个重要卖点是对视觉和运动感知学习者非常友好。这些代码块按颜色编码&…

最短路问题中的bellman-ford算法

最短路问题中的bellman-ford算法 题目 如果要处理单源最短路问题当中存在负权边的&#xff0c;那么就需要用到 bellman-ford算法和SPFA算法&#xff0c;一般情况下都是用 SPFA算法&#xff0c;除了有边数限制的情况只能用bellman-ford算法&#xff0c;比如下面这种 题目 给定…