2017-10-17 19 views
1

私は関数を呼び出したときに電子BrowserWindowに問題があります:win.maximize()アプリケーションがフルスクリーンモードであるかのようにウィンドウのタスクバーをオーバーラップさせますが、 。電子:最大化されたブラウザウィンドウがウィンドウのタスクバーと重複します

ここにスクリーンショットのリンクがあります。 https://www.dropbox.com/s/a7b8h8ukaz4pf26/default%20window%20size.png?dl=0 https://www.dropbox.com/s/8wf0jcv5kp04c25/maximized%20window.png?dl=0

ここに私のコードです:

main.js(デフォルトの電子ウィンドウの設定):

const {app, BrowserWindow} = require('electron'); 
const path = require('path'); 

let mainWindow; 

app.on('window-all-closed', function(){ 
    // Notice on OS X the application don't close when you quit window 
    // Darwin is the platform name when OS X in loaded 
    if(process.platform != 'darwin') { 
     app.quit(); 
    } 
}); 

app.on('ready', function() { 
    mainWindow = new BrowserWindow({ 
     width: 700, 
     height: 450, 
     frame: false, 
     resizable: false, 
     backgroundColor: '#333333', 
     'node-integration': true 
    }); 

    mainWindow.loadURL(path.join(__dirname, '/index.html')); 
    mainWindow.on('closed', function() { 
     mainWindow = null; 
    }); 
}); 

にDefault.js(それは窓のボタンを扱う:最小化、最大化、および閉じます):

const remote = require('electron').remote; 

(function(){ 
    function init(){ 
     document.getElementById('minimize-btn').addEventListener('click', function(){ 
      var window = remote.getCurrentWindow(); 
      window.minimize(); 
     }); 

     document.getElementById('maximize-btn').addEventListener('click', function(){ 
      var window = remote.getCurrentWindow(); 
      if (!window.isMaximized()) { 
       window.maximize(); 
      } else { 
       window.unmaximize(); 
      } 
     }); 

     document.getElementById('close-btn').addEventListener('click', function(){ 
      var window = remote.getCurrentWindow(); 
      window.close(); 
     }); 
    } 

    init(); 
})(); 

ありがとうございました!

答えて

0

これは、私が似たような問題に遭遇したことを覚えていて、それがどのように修正されたのかわからないことが原因です。同様の問題が存在しない場合は、誰かがgithub repoに問題をオープンする必要があります。

0

私はただのWindows 10を使用して独自の電子アプリ上でこの機能をチェックし、それは私はほとんどまったく同じコードと機能を持っているにもかかわらず、タスクバーに重ならない:

function toggleMaximize() { 
    var window = remote.getCurrentWindow(); 
    if(window.isMaximized()) { 
    window.unmaximize(); 
    } else { 
    window.maximize(); 
    } 

は、これらは私のBrowserWindowですまた、かなり似ている設定を、:のWindowStateがちょうど店/アプリケーションウィンドウの前の位置とサイズを復元

mainWindow = new BrowserWindow({ 
    width: windowState.width, 
    height: windowState.height, 
    x: windowState.x, 
    y: windowState.y, 
    show: false, 
    frame: false, 
    transparent: false 
}); 

+0

こんにちはスティーブンソン! コードを再利用してウィンドウステートパッケージを実装しましたが、動作しません。 私はWindow 7と8でテストしましたが、それは同じ問題です。 –

1

私はこの方法でそれを解決すると思う:

まず、フレームと窓を設定するアプリケーションを実行します。、それを閉じ、その後、フレームでそれを実行します。。それでおしまい!それがバグかどうかは分かりません。

この質問を閉じることができます。

関連する問題