创建时设置大小和位置 window
Set size and position when create window
我尝试做一个小应用程序,当我开始我的应用程序时,我在创建 window 时遇到了一点问题。
一开始,我有一个位置和大小固定的页面,我在 background.js
文件中所做的(我在这个文件中没有其他内容):
chrome.app.runtime.onLaunched.addListener(function() {
var screenWidth = screen.availWidth;
var screenHeight = screen.availHeight;
var width = 700;
var height = 650;
var left = Math.round((screenWidth-width)/2);
var top = Math.round((screenHeight-height)/2);
chrome.app.window.create('./index.html', {
id: 'main',
icon: 'icon.png',
outerBounds: {
height:height,
width:width,
left: left,
top: top
}
});
});
这项工作不错,但只是第一次。如果用户自己调整 window 的大小(他可以做到,这不是问题),之后当他重新启动应用程序时,window 的初始大小不是我在 background.js
文件,但它是 window 在他上次使用时关闭它之前的大小。
所以我想要的是应用程序启动时,大小始终为 700*650。
我认为在启动您的应用程序时您可以 check current size of window by chrome.app.window.current()
method and next to change the size if is it required by setSize
method:
另一种方法是通过 setMinimumSize
方法设置 window 的最小所需大小(例如 700*650)或在关闭应用程序时重置属性。从用户的角度来看,如果用户可以更改 window.
的大小就好了
感谢您的回答,我已经通过执行以下操作解决了我的问题:
chrome.app.runtime.onLaunched.addListener(function() {
var screenWidth = screen.availWidth;
var screenHeight = screen.availHeight;
var width = 700;
var height = 650;
var left = Math.round((screenWidth-width)/2);
var top = Math.round((screenHeight-height)/2);
chrome.app.window.create('./index.html',
{
id: 'main',
outerBounds: {
height:height,
width:width,
left: left,
top: top
}
}, function(win){
win.onClosed.addListener(function(){
var appWindow = chrome.app.window.current();
appWindow.outerBounds.height = height;
appWindow.outerBounds.width = width;
appWindow.outerBounds.top = top;
appWindow.outerBounds.left = left;
});
});
});
因此,当应用启动时,大小为 700*650,用户可以自行调整大小 window。但是当用户关闭它时,下次使用默认值重置大小。
我尝试做一个小应用程序,当我开始我的应用程序时,我在创建 window 时遇到了一点问题。
一开始,我有一个位置和大小固定的页面,我在 background.js
文件中所做的(我在这个文件中没有其他内容):
chrome.app.runtime.onLaunched.addListener(function() {
var screenWidth = screen.availWidth;
var screenHeight = screen.availHeight;
var width = 700;
var height = 650;
var left = Math.round((screenWidth-width)/2);
var top = Math.round((screenHeight-height)/2);
chrome.app.window.create('./index.html', {
id: 'main',
icon: 'icon.png',
outerBounds: {
height:height,
width:width,
left: left,
top: top
}
});
});
这项工作不错,但只是第一次。如果用户自己调整 window 的大小(他可以做到,这不是问题),之后当他重新启动应用程序时,window 的初始大小不是我在 background.js
文件,但它是 window 在他上次使用时关闭它之前的大小。
所以我想要的是应用程序启动时,大小始终为 700*650。
我认为在启动您的应用程序时您可以 check current size of window by chrome.app.window.current()
method and next to change the size if is it required by setSize
method:
另一种方法是通过 setMinimumSize
方法设置 window 的最小所需大小(例如 700*650)或在关闭应用程序时重置属性。从用户的角度来看,如果用户可以更改 window.
感谢您的回答,我已经通过执行以下操作解决了我的问题:
chrome.app.runtime.onLaunched.addListener(function() {
var screenWidth = screen.availWidth;
var screenHeight = screen.availHeight;
var width = 700;
var height = 650;
var left = Math.round((screenWidth-width)/2);
var top = Math.round((screenHeight-height)/2);
chrome.app.window.create('./index.html',
{
id: 'main',
outerBounds: {
height:height,
width:width,
left: left,
top: top
}
}, function(win){
win.onClosed.addListener(function(){
var appWindow = chrome.app.window.current();
appWindow.outerBounds.height = height;
appWindow.outerBounds.width = width;
appWindow.outerBounds.top = top;
appWindow.outerBounds.left = left;
});
});
});
因此,当应用启动时,大小为 700*650,用户可以自行调整大小 window。但是当用户关闭它时,下次使用默认值重置大小。