# 示例1.无边框窗口
## 1.项目目录结构:
~~~
frameless-window/
├── assets //一些资源
├── lib // 核心代码
└── package.json // 包描述文件
~~~
## 2.package.json
~~~
{
"name":"frameless-window",
"main":"./lib/index.js",
"version":"0.1.0"
}
~~~
## 3.配置VSCode 调试
在项目下 .vscode/ 目录下增加 launch.json :
~~~
{
"version": "0.2.0",
"configurations": [
{
"name": "Electron 主进程调试",
"type": "node",
"request": "launch",
"cwd": "${workspaceRoot}",
"runtimeExecutable": "path/to/electron.exe",
"program": "${workspaceRoot}/lib/index.js"
}
]
}
~~~
## 4.index.js
~~~
const {app, BrowserWindow} = require('electron')
let win
function createWindow(){
win = new BrowserWindow({
width:360,
height:640,
frame:false,
show:false,
center: true,
minWidth:220,
minHeight:220
})
// win.openDevTools()
win.loadURL(`file://${__dirname}/../resources/index.html`)
win.on('ready-to-show',()=>{
win.show()
})
//
win.on('closed',()=>{
win = null
})
}
app.on('ready',createWindow)
app.on('window-all-closed',()=>{
if(process.platform !== 'darwin'){
app.quit()
}
})
//处理 Mac 的 Dock 图标点击
app.on('activate', ()=>{
if(win === null){
createWindow()
}
})
~~~
- 索引
- 前言.关于Electron
- 第一部分 开发指南
- 第1章.平台支持
- 第2章.安全、原生功能和你的责任
- 第3章.版本说明
- 第4章.发行应用
- 第5章.Mac App商店提交指南
- 第6章.Windows商店指南
- 第7章.应用打包
- 第8章.使用Node原生模块
- 第9章.调试主进程
- 9.1.在VSCode中调试
- 9.2.在node-inspector中调试
- 第10章.使用Selenium和WebDriver
- 第11章.DevTools扩展
- 第12章.使用Pepper Flash插件
- 第13章.使用Widevine CDM插件
- 第14章.通过自动化持续集成系统进行测试
- 第15章.离屏渲染
- 第二部分 使用教程
- 第16章.快速入门
- 第17章.桌面环境集成
- 第18章.在线/离线事件探测
- 第19章.应答式编译器(REPL)
- 第三部分 API参考
- 第20章.API简介
- 第21章.进程对象
- 第22章.Chrome的命令行开关
- 第23章.环境变量
- 第24章.定制的DOM元素
- 24.1.File 对象
- 24.2.webview 标签
- 第25章.主进程模块
- 25.1.app
- 25.2.BrowserWindow
- 25.3.无框架窗口
- 第26章.渲染进程模块
- 第27章.两种进程可用的模块
- 第四部分 高级主题
- 附 FAQ
- 附 文档规范
- 附 示例用例
- 1.无边框窗口