2017-10-03 6 views
2

これは私のmain.jsです。このファイルから、私の目的に必要なexeファイルを生成します。ここでは、ピンチズームに対する保護を追加する必要があります。ドキュメントには、Webframeコンポーネントを追加することでこれを行うことができると書かれていますが、どこにreendererがあるかを見つけることはできません。私のアプリケーションはmain.jsとindex.htmlが基本的に読んでいるので、index.htmlのスクリプトタグに入れてみましたが、それは成功しませんでした。助けてください電子レンダラープロセスでwebFrameを設定するにはどうすればよいですか? - Electron

const electron = require('electron') 
// Module to control application life. 
const app = electron.app 
// Module to create native browser window. 
const BrowserWindow = electron.BrowserWindow 

const path = require('path') 
const url = require('url') 


// Keep a global reference of the window object, if you don't, the window 
will 
// be closed automatically when the JavaScript object is garbage collected. 
let mainWindow 

function createWindow() { 
// Create the browser window. 
mainWindow = new BrowserWindow({width: 1820, height: 1080, transparent:true, 
resizable:false, autoHideMenuBar:true, frame:false }) 
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 

})) 

//Accessing the Dev tools 
//mainWindow.webContents.openDevTools(); 
// mainWindow.webContents.on('devtools-opened',() => { 
// setImmediate(() => { 
    // do whatever you want to do after dev tool completely opened here 
//  mainWindow.focus(); 
// }); 
//}) 

// 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 
}) 
} 

// This method will be called when Electron has finished 
// initialization and is ready to create browser windows. 
// Some APIs can only be used after this event occurs. 
app.on('ready', createWindow) 

// Quit when all windows are closed. 
app.on('window-all-closed', function() { 
    // On OS X it is common for applications and their menu bar 
    // to stay active until the user quits explicitly with Cmd + Q 
    if (process.platform !== 'darwin') { 
    app.quit() 
    } 
}) 

app.on('activate', function() { 
    // On OS X it's common to re-create a window in the app when the 
    // dock icon is clicked and there are no other windows open. 
    const {webFrame} = require('electron') 

    webFrame.setZoomLevelLimits(1,1); 
    webFrame. 
    console.log(webFrame) 
    if (mainWindow === null) { 
    createWindow() 
    } 
}) 

// In this file you can include the rest of your app's specific main process 
// code. You can also put them in separate files and require them here. 

答えて

1

私は同じ混乱に走りました。レンダラープロセスは、サイト/アプリケーションを実行するコードです。そのため、index.htmlファイルやその他のアプリケーションのjsファイルになります。私はindex.htmlに次のものを置き、私が探していた結果を得ることができました。

<script type="text/javascript"> 
     const webFrame = require('electron').webFrame; 
     webFrame.setZoomFactor(1); 
     webFrame.setZoomLevelLimits(1, 1); 
     webFrame.setVisualZoomLevelLimits(1, 1); 
     webFrame.setLayoutZoomLevelLimits(0, 0); 
    </script> 
関連する問題