我是ElectronJs的新手,我终于想出了如何弄圆角。
但是,现在我可以正常工作了,我注意到我丢下了窗户上的阴影,为什么?
下面您可以找到整个电子特定代码的main.js文件。
const electron = require("electron");
const app = electron.app;
const BrowserWindow = electron.BrowserWindow;
const path = require("path");
const isDev = require("electron-is-dev");
let mainWindow;
function createWindow() {
mainWindow = new BrowserWindow({
width: 900,
height: 680,
frame: false,
transparent: true,
hasShadow: true
});
mainWindow.loadURL(
isDev
? "http://localhost:3000"
: `file://${path.join(__dirname, "../build/index.html")}`
);
if (isDev) {
// Open the DevTools.
//BrowserWindow.addDevToolsExtension('<location to your react chrome extension>');
mainWindow.webContents.openDevTools();
}
mainWindow.on("closed", () => (mainWindow = null));
}
app.on("ready", () => {
createWindow();
});
app.on("window-all-closed", () => {
if (process.platform !== "darwin") {
app.quit();
}
});
app.on("activate", () => {
if (mainWindow === null) {
createWindow();
}
});
});
答案 0 :(得分:0)
因此,根据他们的文档,这是ElectronJS的已知限制,这是因为您设置了“ transparent = true”:
“在Mac上,本机窗口阴影将不会显示在透明窗口上。”
https://www.electronjs.org/docs/api/frameless-window#limitations