【electron】electron实现窗口的最大化、最小化、还原、关闭

目录

在以Electron+react为开发语言,一个桌面端系统实现窗口的最大化、最小化、还原、关闭时,要在主进程和渲染进程中去进行设置;
主进程文件:就是我们的main.js文件【如果你的项目中进行了main文件拆分,按照你当前项目的文件去进行定义】
预加载文件:preload文件,需要在窗口创建时加载进去
渲染进程文件:就是我们当前要去进行使用的地方;
实现这个功能之前呢,首先要了解清楚主进程和渲染进程之间的通讯,就会上手非常的快;

1、第一步,在界面上定义好按钮;

这边是我在项目中定义好的最大化、最小化、还原、关闭按钮【详细自己设置样式】,效果如下图所示:

2、第二步,在主进程中进行设置调用相应的方法

这边我定义了个function函数,直接在我们的主进程createWindow中去进行调用、注册窗口控制的IPC处理函数 registerWindowControls()就可以了

3、第三步,要和预加载文件结合起来使用

预加载preload文件和主进程main文件是有关联性的,详细看图片对比图。

这里定义的windowControls接下来要在渲染文件中去使用;

4、第四步,使用ipc通信,实现窗口功能

以上就是实现完整的功能代码了,感兴趣的可以按照步骤操作试一下

相关推荐
九年义务漏网鲨鱼1 天前
从零学习 Agentic RL(四)—— 超越 ReAct 的线性束缚:深入解析 Tree-of-Thoughts (ToT)
前端·学习·react.js
Jay丶1 天前
Next.js 与 SEO:让搜索引擎爱上你的网站 💘
前端·javascript·react.js
狗头大军之江苏分军1 天前
请不要在感情里丢掉你的“我”
前端·后端
路光.1 天前
一.React相关面试真题
前端·react.js·前端框架
十年_H1 天前
Cesium 顶点着色器的数据来源
javascript·webgl·cesium
玉宇夕落1 天前
🌌用CSS3打造“星球大战”片头:前端是代码界的导演,让文字在星空中翻滚
前端·javascript
gustt1 天前
CSS3 动画实战:打造星球大战开场动画
前端·css
colorFocus1 天前
Promise与async/await的接口串联和并联
前端·javascript
流星稍逝1 天前
前端解决两数计算精度确实问题
前端
stringwu1 天前
Flutter 中的 MVVM 架构实现指南
前端·flutter