const { app, BrowserWindow } = require('electron');
function createWindow() {
const mainWindow = new BrowserWindow({
frame: false, // ウィンドウフレームを非表示にする
// その他のオプション...
});
// ウィンドウのコンテンツをロードする処理など...
mainWindow.show();
}
app.whenReady().then(createWindow);
タイトルバーを完全に非表示にする代わりに、カスタムタイトルバーを作成する方法もあります。この場合、ウィンドウのドラッグ操作を監視し、ウィンドウを移動するコードを追加する必要があります。以下は、その例です。
const { app, BrowserWindow, ipcMain } = require('electron');
function createWindow() {
const mainWindow = new BrowserWindow({
frame: false, // ウィンドウフレームを非表示にする
// その他のオプション...
});
// ウィンドウのコンテンツをロードする処理など...
mainWindow.show();
let isDragging = false;
let offsetX = 0;
let offsetY = 0;
ipcMain.on('titlebar:dragstart', (event, { x, y }) => {
isDragging = true;
const { x: windowX, y: windowY } = mainWindow.getPosition();
offsetX = windowX - x;
offsetY = windowY - y;
});
ipcMain.on('titlebar:drag', (event, { x, y }) => {
if (isDragging) {
const newX = x + offsetX;
const newY = y + offsetY;
mainWindow.setPosition(newX, newY);
}
});
ipcMain.on('titlebar:dragend', () => {
isDragging = false;
});
}
app.whenReady().then(createWindow);