- 添加 Electron 主进程和渲染进程 - 实现读卡器连接、断开和读取卡片 ID 功能 - 添加自定义窗口标题栏和窗口控制 - 实现简洁美观的用户界面 - 添加项目文档 README.md
60 lines
1.2 KiB
JavaScript
60 lines
1.2 KiB
JavaScript
const { app, BrowserWindow, ipcMain } = require('electron')
|
|
|
|
function createWindow() {
|
|
const win = new BrowserWindow({
|
|
width: 440,
|
|
height: 400,
|
|
frame: false,
|
|
transparent: false,
|
|
backgroundColor: '#f9f9f9',
|
|
roundedCorners: true,
|
|
webPreferences: {
|
|
nodeIntegration: true,
|
|
contextIsolation: false,
|
|
},
|
|
})
|
|
|
|
win.loadFile('index.html')
|
|
}
|
|
|
|
app.whenReady().then(() => {
|
|
createWindow()
|
|
|
|
app.on('activate', () => {
|
|
if (BrowserWindow.getAllWindows().length === 0) {
|
|
createWindow()
|
|
}
|
|
})
|
|
})
|
|
|
|
app.on('window-all-closed', () => {
|
|
if (process.platform !== 'darwin') {
|
|
app.quit()
|
|
}
|
|
})
|
|
|
|
ipcMain.on('window-minimize', () => {
|
|
const focusedWindow = BrowserWindow.getFocusedWindow()
|
|
if (focusedWindow) {
|
|
focusedWindow.minimize()
|
|
}
|
|
})
|
|
|
|
ipcMain.on('window-maximize', () => {
|
|
const focusedWindow = BrowserWindow.getFocusedWindow()
|
|
if (focusedWindow) {
|
|
if (focusedWindow.isMaximized()) {
|
|
focusedWindow.unmaximize()
|
|
} else {
|
|
focusedWindow.maximize()
|
|
}
|
|
}
|
|
})
|
|
|
|
ipcMain.on('window-close', () => {
|
|
const focusedWindow = BrowserWindow.getFocusedWindow()
|
|
if (focusedWindow) {
|
|
focusedWindow.close()
|
|
}
|
|
})
|