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" },
]
})
相关推荐
铁皮饭盒24 分钟前
bun直接tsx,优雅!
javascript·后端
Csvn2 小时前
Monorepo 迁移血泪史:从 Multi-Repo 到 Turborepo,这 3 个坑我帮你踩完了
前端
星栈2 小时前
Dioxus 多页面怎么做:`dioxus-router`、嵌套路由、`Outlet` 和页面组织,一篇给你讲顺
前端·rust·前端框架
用户987409238872 小时前
用 Remotion + edge-tts 打造中文教学视频全自动流水线
前端
风骏时光牛马2 小时前
Less前端工程化实战:变量混合器与项目样式分层落地
前端
假如让我当三天老蒯2 小时前
Options API(选项式 API) 和 Composition API(组合式 API)
前端·vue.js·面试
SameX2 小时前
iOS 独立开发实践:用 MapKit + 像素渲染实现 Citywalk 轨迹地图 App「雁过留痕」
前端
_柳青杨2 小时前
一文吃透 Node.js 事件循环:从原理到 Node 20+ 重大变更
javascript·后端
skyey3 小时前
页面加载时,深色模式闪白的问题解决
前端
IT_陈寒3 小时前
Java 并行流把我坑惨了,这6小时加班值了
前端·人工智能·后端