electron自定义快捷窗口按钮,大小窗口切换
关注公众号: 微信搜索 前端工具人
; 收货更多的干货
原文链接: 自己掘金文章: https://juejin.cn/post/7067815153374330888/
一、需求
主要是一下几个常见的需求:
- 自定义顶部菜单栏, 可拖拽;
- 自定义最小化、最大化、退出按钮、刷新按钮(类似浏览器的重新加载、用于开发阶段调试);
- 小窗口 - 中窗口 - 全屏窗口, 相互切换;
二、electron 解读
electron
区分了两种进程:主进程和渲染进程
2.1 主进程:
- 创建进程、窗口...
- 控制应用生命周期(启动、退出APP、事件监听..)
- 调用系统底层功能 (
Electron API
)、调用原生API
(Node.js
与本地交互...)
2.2 渲染进程
- 主要是内置
Chromium
浏览, 来实现页面的渲染; - 可以理解成
electron
渲染进程 为Chromium
的窗口; 所以和日常开发区别不大
三、需求实现
项目入口文件 render.js
, 主进程事件文件 ipc.event.js
render.js
ipc.event.js
3.1 自定义顶部导航栏
首先要隐藏调自带的顶部导航栏
3.2 自定义最小化、最大化、退出按钮、刷新按钮;
3.3 小窗口 - 中窗口 - 全屏窗口, 相互切换;
- 初始化登录界面是小窗口类似于微信登录一样
400 * 500
; - 登录后跳转到程序主界面,
全屏
; - 忘记密码界面(中窗口)1366 * 788
自己开发时,在全屏状态下切换回小窗口切换不了,百度了蛮久,也没结果;
后面发现改变全屏状态后就能切换...
方法:先最小化窗口
、在 setMinimumSize
改变尺寸, 在显示
, 相当于加了个过渡一下,变换过程也没那么死板
具体看3.2
的 onChangeWindow
里的 logout
方法
有不对之处欢迎指正, 代码有删减,没做测试;
只是作为分享,让有需要的少走弯路,节省百度时间
__EOF__

本文作者:赖先生
本文链接:https://www.cnblogs.com/ljx20180807/p/15927975.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/ljx20180807/p/15927975.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
标签:
Electron
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话