zoukankan      html  css  js  c++  java
  • electron_window 创建窗口

    /**
     * 窗口基类,封装通用的窗口操作
     */

    const { BrowserWindow } = require('electron');

    /**
     * 基本窗口样式
     * @type {{ number, height: number, resizable: boolean, frame: boolean, parent: object, modal: boolean}}
     */
    const windowStyle = {
        title: '云', // 窗口标题
        800, // 宽
        height: 600, // 高
        resizable: true, // 窗口大小是否可变
     //   frame: false, // 是否带边框
        parent: null, // 父窗口
        modal: false, // 是否模态窗口
        show: false, // 是否显示窗口
    };

    /**
     * 窗口类,继承electron的BrowserWindow
     * @extends BrowserWindow
     */
    class EucWindow extends BrowserWindow {
        /**
         * 窗口类,继承electron的BrowserWindow
         * @param style 窗口样式
         * @param url
         * @param win
         */
        constructor(style, url, win) {
            const myStyle = Object.assign({}, windowStyle, style);
            super(myStyle);

            win = this;

            // 阻止跳转链接
            this.webContents.on( 'will-navigate', (event)=>{
                event.preventDefault();
            });

            win.webContents.openDevTools({detach:true});

            // 加载网页
            this.loadURL(url);

            this.on('closed', function() {
                win = null;
            });

        }

    }

    module.exports = EucWindow;

  • 相关阅读:
    如何将伪数组转换成真正的数组
    JS 中对变量类型的五种判断方法
    ajax详解
    onload和ready的区别
    ES5继承
    跨域的三种解决方式
    如何处理使用js兼容所有浏览器的问题
    Canvas修行之黑客帝国代码雨
    Webpack+React+ES6入门指南[转]
    对于Mongodb数据库的学习
  • 原文地址:https://www.cnblogs.com/sxz2008/p/6796677.html
Copyright © 2011-2022 走看看