Как замаскировать электронное окно, когда оно не сфокусировано? - PullRequest
0 голосов
/ 17 февраля 2019

Пожалуйста, дайте мне простое руководство по стеклу электронного окна, когда оно не сфокусировано,

Я нашел событие для этого из https://github.com/electron/electron/issues/1985 (код ниже), но я нене знаю, как его использовать.и я не могу найти способ замаскировать сфокусированное окно (с: https://github.com/electron/electron/blob/master/docs/api/browser-window.md#winfocus)

var app = require('app');

app.on('focused-window', function (focusedWindow) {
  doSomethingWithTheFocusedWindow(focusedWindow);
});

Ответы [ 2 ]

0 голосов
/ 17 февраля 2019

После более тщательного изучения вашего вопроса создается впечатление, что у вас может быть небольшая путаница между приложением, BrowserWindow и некоторыми другими компонентами в электроне.Вот еще более подробный пример, который, как мы надеемся, связывает все части вместе.

В двух словах, приложение называется основной процесс , который на самом деле не является окном браузера (также называется процессом визуализации ).Вы должны создать любые окна, которые вы хотите.Если вам это нужно, связь между основным процессом и процессами визуализации осуществляется через Межпроцессные каналы связи .

const { app, BrowserWindow } = require('electron');
app.on('ready', () => {
  let child = new BrowserWindow({ parent: top, show: false });
  child.loadURL('https://github.com');
  child.on('focus', () => { child.setOpacity(1); });
  child.on('blur', () => { child.setOpacity(0.5); });
  child.once('ready-to-show', () => {
    child.show();
  });
});
0 голосов
/ 17 февраля 2019

Это работает для меня в macOS:

app.on ('browser-window-blur', function (event, browserWindow)
{
    browserWindow.setOpacity (0.5);
});
//
app.on ('browser-window-focus', function (event, browserWindow)
{
    browserWindow.setOpacity (1.0);
});

Похоже, что интерфейс событий приложения каким-то образом эволюционировал со времени упомянутого вами предложения.События называются browser-window-focus и browser-window-blur , и связанная функция обратного вызова использует два параметра: event и browserWindow.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...