已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。
昨天关门了。
这篇文章是昨天编辑并提交审查的。
Improve this question
我正在做一个项目,以创建一个覆盖,将有助于团队作战战术的球员。所以我首先创建一个窗口的按钮,当点击,将打开一个覆盖,但我不知道如何做到这一点,这里是我以前尝试:
我有一个main.js:
const { app, BrowserWindow, ipcMain } = require('electron');
let overlayWindow;
function createOverlayWindow() {
overlayWindow = new BrowserWindow({
width: 400,
height: 300,
transparent: true,
frame: false,
alwaysOnTop: true,
webPreferences: {
nodeIntegration: true
}
});
overlayWindow.loadFile('overlay.html');
overlayWindow.on('blur', () => {
overlayWindow.hide();
});
}
ipcMain.on('open-overlay', () => {
createOverlayWindow();
});
app.whenReady().then(() => {
console.log("windows_Create");
createWindow();
});
function createWindow() {
const mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
});
mainWindow.loadFile('index.html');
}
我有一个index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>TFT HELPER</title>
</head>
<body>
<h1>hey!</h1>
<button id="openOverlayButton" onclick="overlay.js">Overlay</button>
</body>
</html>
我有一个覆盖。js:
const {ipcRenderer } = require('electron');
document.getElementById("openOverlayButton").addEventListener('click', () => {
console.log("bouton_cliquer");
ipcRenderer.send('open-overlay');
});
我有一个overlay.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Overlay</title>
<style>
body {
background-color: transparent;
text-align: center;
}
h1 {
color: white;
font-size: 3em;
margin-top: 20%;
}
</style>
</head>
我有一个包。json
我也用index.html文件测试了这个,但是不起作用,也许问题不是index.html?:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>TFT HELPER</title>
</head>
<body>
<h1>hey!</h1>
<button id="openOverlayButton">Overlay</button>
<script src="overlay.js"></script>
</body>
</html>
我认为问题就在这里,但也可能是别的原因:
//main.js
ipcMain.on('open-overlay', () => {
createOverlayWindow();
});
1条答案
按热度按时间fsi0uk1n1#
你不能直接从onclick调用一个JavaScript文件,像这样修改你的index.html: