在React中点击鼠标打开一个新窗口

时间:2018-10-29 13:00:51

标签: reactjs electron

我正在用电子创建桌面应用程序。单击登录按钮后,我想打开一个具有不同尺寸的新窗口。我正在使用Ipc渲染器将消息传递到main.js文件,以调整窗口对象的大小。但这似乎不起作用。

private handleonclick(e: React.MouseEvent<HTMLElement>) {
  this.props.onLogin(this.state.user, this.state.password, this.state.domain, this.state.role);
  this.setState({
    loginSent: true,
    showWindow: false
  });
  const {ipcRenderer} = require('electron');
  ipcRenderer.send('resize-me-please')
  e.preventDefault();
}

在Mains.js中

let { ipcMain } = require('electron') 
ipcMain.on('resize-me-please', function () {
  win.setSize(400,400 );
  return win;
}); 

1 个答案:

答案 0 :(得分:0)

您可以使用fromWebContents静态方法从收到的BrowserWindow访问event

因此,要在回调中调整大小,您可以编写

ipcMain.on('resize-me-please', (event) => {
  BrowserWindow.fromWebContents(event.sender)
    .setSize(400, 400)
})
相关问题