Electron: Die Optionen "Min-Breite" und "Min-Höhe" von BrowserWindow funktionieren nicht, da es sich um ungültige Javascript-Namen handelt

Erstellt am 6. Mai 2015  ·  14Kommentare  ·  Quelle: electron/electron

Laut Dokumentation:

https://github.com/atom/electron/blob/master/docs/api/browser-window.md

Mindestbreite und -höhe können in den Optionen als Mindestbreite und Mindesthöhe an BrowserWindow übergeben werden, aber diese Optionen funktionieren nicht, da es sich um ungültige Javascript-Namen handelt:

https://mothereff.in/js-variables#min -width

setMinimumSize() funktioniert jedoch wie erwartet.

Hilfreichster Kommentar

@sbruchmann , der von dir bereitgestellte Code funktioniert nicht. aber das hat bei mir funktioniert

new BrowserWindow({
  'minHeight': 300,
  'minWidth': 300
})

Alle 14 Kommentare

Hallo @hzeroo ,

Sie müssen Ihre Schlüssel in Anführungszeichen setzen, wenn sie ungültige Zeichen enthalten:

new BrowserWindow({
  'min-height': 300,
  'min-width': 300
})

Kann geschlossen werden, wusste nicht ^^.

@sbruchmann , der von dir bereitgestellte Code funktioniert nicht. aber das hat bei mir funktioniert

new BrowserWindow({
  'minHeight': 300,
  'minWidth': 300
})

@bansalvks Der von mir bereitgestellte Code funktioniert _nicht mehr_. In früheren Versionen mussten diese Schlüssel mit Bindestrichen geschrieben werden, aber es wurde zugunsten von camelCase eingestellt.

@bansalvks Das reicht:

new BrowserWindow({
  minHeight: 300,
  minWidth: 300
})

Die Einstellung von minHeight, minWidth hat bei mir nicht funktioniert. Ich musste die anfängliche Fenstergröße festlegen und dann die Mindestgrößen festlegen:

new BrowserWindow({
  height: 300,
  width: 300,
  minHeight: 300,
  minWidth: 300
})

Ich möchte hinzufügen, dass sowohl minWidth als auch minHeight angegeben werden sollten . Ich brauchte das Fenster, um über der Mindestbreite zu bleiben, aber ich habe mich nicht um die Mindesthöhe gekümmert. So hat es nicht funktioniert. Definiere also immer beides.

Stellen Sie auch sicher, dass Sie keine Dezimalzahlen eingeben, ich hatte Dezimalzahlen drin und es warf es weg. Der Versuch, genau zu sein, ist nicht immer gut, wenn es nicht funktioniert. Ungefähr statt Dezimalstellen.

das hat bei mir nicht funktioniert

new BrowserWindow({
      width: 800, height: 600,
      'minWidth':400,// even 'min-width' or minWidth
      frame:false
})

Bei mir hat es erst funktioniert, nachdem ich die Mindesthöhe wie folgt eingestellt habe:

new BrowserWindow({
  width: 800, height: 600,
  minHeight: 300,
  minWidth: 300,
  frame:false
})

In meinem Fall habe ich versucht, die Fenstergröße relativ zur Bildschirmgröße einzustellen.
Stellen Sie sicher, dass Sie ganze Zahlen übergeben

const screenElectron = electron.screen;
const display = screenElectron.getPrimaryDisplay();
const dimensions = display.workAreaSize;
mainWindow = new BrowserWindow({
    width: parseInt(dimensions.width * 0.8),
    height: parseInt(dimensions.height * 0.8),
    minWidth: parseInt(dimensions.width * 0.8),
    minHeight: parseInt(dimensions.height * 0.8),
    maxWidth: dimensions.width,
    maxHeight: dimensions.height,
    icon: `${__dirname}/assets/icon.ico`
  });

All dies funktioniert nicht unter Windows 10, getestet auf Elektron 7 und 8. BrowserWindow kann immer um 30-40 Pixel weiter minimiert werden.

@Celebes , das funktioniert bei mir unter Windows 10. Ich verwende die Electron-Version 9.0.2 .

new BrowserWindow({
  width: 800,
  height: 600,
  minWidth: 900,
  minHeight: 600,
})

@Celebes , das funktioniert bei mir unter Windows 10. Ich verwende die Electron-Version 9.0.2 .

new BrowserWindow({
  width: 800,
  height: 600,
  minWidth: 900,
  minHeight: 600,
})

Ihre Einstellung funktioniert, aber die width und height scheinen unnötig zu sein.

Ich benutze Win10 und Elektron 9.1.0.

@Celebes , das funktioniert bei mir unter Windows 10. Ich verwende die Electron-Version 9.0.2 .

new BrowserWindow({
  width: 800,
  height: 600,
  minWidth: 900,
  minHeight: 600,
})

Ihre Einstellung funktioniert, aber die width und height scheinen unnötig zu sein.

Ich benutze Win10 und Elektron 9.1.0.

Was würde es bedeuten, die anfängliche Breite kleiner als die minwidth zu setzen?

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen