node-ddk, electron 组件, 操作窗口

node-ddk 操作窗口

https://blog.csdn.net/eli960/article/details/146207062

也可以下载demo直接演示

http://linuxmail.cn/go#node-ddk

在渲染进程(既web端)操作

ts 复制代码
import renderer, { NODEDDK } from "node-ddk/renderer"
let w = renderer.window

// 本窗口参数
w.getInfo()
// 关闭窗口
window.close()
w.close()
// 注册关闭前执行函数
w.registerBeforeunloadOnce(async () => {
  if (!window.confirm("点击确定,关闭窗口")) {
    return false
  }
}
// 强制关闭窗口
w.forcedClose()
// 最小化
w.minimize()
// 最大化
 w.maximize()
// 退出最大化
w.unmaximize()
// 最大化/退出最大化
w.maximizeSwitch(),
// 隐藏
w.hide()
// 全屏
w.setWindowFullscreen()
// 退出全屏
w.unsetWindowFullscreen()
// 总在最上面
w.setWindowAlwaysOnTop()
// 退出总在最上面
w.unsetWindowAlwaysOnTop()
// 左上角(800x600)
w.setRectangle({ x: 0, y: 0, width: 800, height: 600 })
// 右下角(1000x800)
w.setRectangle({ x: screen.availWidth - 1000, y: screen.availHeight - 800 - 36, width: 1000, height: 800 })
// 上下左右居中
w.setCenter()
// 缩放 60%
w.setZoomFactor(0.6)
// 缩放 80%
w.setZoomFactor(0.8)
// 缩放 100%
w.setZoomFactor(1)
// 缩放 120%
w.setZoomFactor(1.2)
// 获取 FACTOR
w.getZoomFactor()

窗口,高级连续动作

ts 复制代码
w.operateWindowStepByStep({
steps: [
{ type: "position", x: 0, y: 0 },
{ type: "sleep", sleep: 1000 },
{ type: "maximize" },
{ type: "sleep", sleep: 1000 },
{ type: "unmaximize" },
{ type: "sleep", sleep: 1000 },
{ type: "center" },
{ type: "sleep", sleep: 1000 },
{ type: "size", width: 300, height: 200 },
{ type: "sleep", sleep: 1000 },
{ type: "hide" },
{ type: "sleep", sleep: 1000 },
{ type: "show" },
{ type: "sleep", sleep: 1000 },
{ type: "size", width: 800, height: 600 },
{ type: "sleep", sleep: 1000 },
{ type: "increaseZoomFactor", factor: 0.2 },
{ type: "sleep", sleep: 1000 },
{ type: "setZoomFactor", factor: 1 },
{ type: "sleep", sleep: 1000 },
{ type: "fullscreen" },
{ type: "sleep", sleep: 1000 },
{ type: "unfullscreen" },
]
})
相关推荐
颜酱1 小时前
图结构完全解析:从基础概念到遍历实现
javascript·后端·算法
失忆爆表症2 小时前
05_UI 组件库集成指南:Shadcn/ui + Tailwind CSS v4
前端·css·ui
小迷糊的学习记录2 小时前
Vuex 与 pinia
前端·javascript·vue.js
发现一只大呆瓜2 小时前
前端性能优化:图片懒加载的三种手写方案
前端·javascript·面试
不爱吃糖的程序媛2 小时前
Flutter 与 OpenHarmony 通信:Flutter Channel 使用指南
前端·javascript·flutter
利刃大大2 小时前
【Vue】Element-Plus快速入门 && Form && Card && Table && Tree && Dialog && Menu
前端·javascript·vue.js·element-plus
NEXT062 小时前
AI 应用工程化实战:使用 LangChain.js 编排 DeepSeek 复杂工作流
前端·javascript·langchain
念风零壹3 小时前
AI 时代的前端技术:从系统编程到 JavaScript/TypeScript
前端·ai
光影少年3 小时前
react的hooks防抖和节流是怎样做的
前端·javascript·react.js
小毛驴8503 小时前
Vue 路由示例
前端·javascript·vue.js