资讯专栏INFORMATION COLUMN

webpack+electron(桌面系统双平系统)

dongfangyiyu / 2316人阅读

摘要:新建屏幕是否可以关闭不显示在任务栏设置全屏设置全屏开启第二块平面准备启动项目关闭屏幕退出

新建屏幕

function createWindow() {

mainWindow = new BrowserWindow({
    webPreferences: {
        webSecurity: false
    },
    width: 1024,
    height: 768,
    icon: "static/icon.ico",
    transparent: false,
    frame: false,
    minimizable: true,
    titleBarStyle: "hiddenInset"
})
mainWindow.once("ready-to-show", () => {
    mainWindow.show()
})
let displays = electron.screen.getAllDisplays()
let externalDisplay = displays.find((display) => {
    return display.bounds.x !== 0 || display.bounds.y !== 0
})

if(externalDisplay) {
    win = new BrowserWindow({
        width: 1024,
        height: 768,
        transparent: false,
        frame: false,
        x: externalDisplay.bounds.x,
        y: externalDisplay.bounds.y,
        closable: true,    //是否可以关闭
        skipTaskbar: true //不显示在任务栏
    })
    win.once("ready-to-show", () => {
        win.show()
    })
    win.loadURL(`file://${__dirname}/pingmuad.html`)
    //设置全屏
    win.setFullScreen(true);

}
//设置全屏
mainWindow.setFullScreen(true);
// and load the index.html of the app.
mainWindow.loadURL(url.format({
    pathname: path.join(__dirname, "index.html"),
    protocol: "file:",
    slashes: true
}))
trayIcon = path.join(__dirname, "static");
appTray = new Tray(path.join(trayIcon, "icon.ico"));
// Open the DevTools.
mainWindow.webContents.openDevTools();
// Emitted when the window is closed.
    mainWindow.on("closed", function() {
        // Dereference the window object, usually you would store windows
        // in an array if your app supports multi windows, this is the time
        // when you should delete the corresponding element.
        mainWindow = null;
        app.quit()
    })

}
开启第二块平面
ipc.on("pingmuorder", (event, arg) => {

win.loadURL(`file://${__dirname}/pingmuorder.html`);
win.setMenu(null);
win.webContents.on("did-finish-load", () => {
    win.webContents.send("request", arg);
});

});

准备启动项目
app.on("ready", createWindow)

关闭屏幕退出
app.on("window-all-closed", function() {

if(process.platform !== "darwin") {
    app.quit()
}

})

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/107987.html

相关文章

  • 使用webpack + electron + reactJs开发windows桌面应用

    摘要:在开发项目时,可以先用网页的形式开发项目,等到网页项目部分差不多完成后,再注入中,开发网页项目部分和窗体部分的交互在中使用后,将不会打包有关的代码 electron是一两年前挺火的一个框架本质上是一个浏览器,但是集成了很多windows系统的功能,让前端开发也可以直接操作windows的窗体,做成一个实打实的桌面软件 团队主要的技术栈是react,所以考虑用react开发,方便维护。 ...

    khlbat 评论0 收藏0
  • 使用 electron-vue 构建你的桌面应用

    摘要:翻译一下它是一个运行时,可以像一样这样执行也是一个使用构建跨平台原生桌面应用的框架。具有两个进程,分别是主进程,以及渲染进程。 什么是 electron 官网里这么说:Electron提供了一个Nodejs的运行时,专注于构建桌面应用,同时使用web页面来作为应用的GUI,你可以将其看作是一个由JavaScript控制的迷你版的Chromium浏览器。 翻译一下:它是一个运行时,可以像...

    qieangel2013 评论0 收藏0
  • Electron 开发的 gulp 配置

    摘要:在我看来,对于广大前端开发者来说,最为耳熟能详的应该是和。的很好处理,和前端开发类似,和都有类似的工具,直接将前端开发中使用的配置挪过来就好。至此,只需要在终端中执行就能达到开发过程中自动和的目的了。 源自 Atom-shell 的 Electron 目前是一个很火的项目。已经有很多开发者基于 Electron 开发出了各种各样的桌面程序。在我看来,对于广大前端开发者来说,最为耳熟能详...

    PingCAP 评论0 收藏0
  • 用JS开发跨平台桌面应用,从原理到实践

    摘要:导读使用开发客户端程序已经有一段时间了,整体感觉还是非常不错的,其中也遇到了一些坑点,本文是从运行原理到实际应用对进行一次系统性的总结。一桌面应用程序桌面应用程序,又称为程序,但是和程序也有一些区别。就开发速度方面,比原生编译技术要快一些。 导读 使用Electron开发客户端程序已经有一段时间了,整体感觉还是非常不错的,其中也遇到了一些坑点,本文是从【运行原理】到【实际应用】对Ele...

    mj 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<