在表格宏使用CreateObject("KWPS.Application)时打开的窗口,如何关闭?

CreateObject("KWPS.Application)时能否直接在当前窗口创建,而不是新建一个WPS窗口?或者有没有什么方式关闭? Quit、Exit、Close都不行
四川省
浏览 2331
1
点赞
分享
+1
8
1 +1
全部评论 8
 
恰同学少年
wdapp.Quit() 不好用?
· 黑龙江省
回复
陈某人
不行,窗口管理模式为“整合模式”的时候无法关闭。窗口管理模式为“多组件模式”才行
· 四川省
回复
 
陈某人
let windowTitle = fileName + " - WPS Office"; // 新窗口的标题 let hwnd = ExecuteExcel4Macro(`CALL("User32", "FindWindowA", "JJC", 0, "${windowTitle}")`); if (hwnd > 0) { ExecuteExcel4Macro(`CALL("User32", "PostMessageA", "JJJJJ", ${hwnd}, ${16}, ${0}, ${0})`); console.log("新窗口:“" + windowTitle + "”已关闭"); } else { console.log("未找到窗口:" + windowTitle); }
· 四川省
回复
恰同学少年
https://forum.wps.cn/topic/60265 我知道这个方法。但我认为,既然是对象,应该有WPS API 方法。而不是用win API。
· 黑龙江省
回复
 
恰同学少年
WPS开发文档描述: 多进程模式:用户窗口下可以启动多个wps客户端,通过使用创建的WpsClient对象调用wpsjsrpcsdk.js提供的接口,可以将操作发送到该对象对应的wps客户端上,不同的客户端可以执行不同的操作,互不影响。
· 黑龙江省
回复
陈某人
let wdapp = CreateObject("kwps.application"); wdapp.Visible = true; wdapp.DisplayAlerts = false; let newDoc = wdapp.Documents.Open(wordPath); 我是在WPS表格通过这个方式启动了一个新的WPS客户端,我想在修改完word文件后,关闭这个新的WPS窗口,现在我已经找到一种方式了
· 四川省
回复