是否可以约束NW.JS应用程序中窗口的宽高比?
我的内容是800 x 600.在package.json清单中,我可以将窗口设置定义为...
html, body{
margin: 0;
height: 100%;
}
main {
position: relative;
width:100vw;
max-width:133.3333vh; /* max-width / width = aspect ratio */
min-width: 800px;
height:75vw;
max-height:100vh; /* max-height / height = aspect ratio */
min-height: 600px;
margin: 0 auto;
}
我使用CSS来保留内容的宽高比并尽可能地填充窗口:
window resize
但是,如果使窗口太宽,则两侧会出现空白区域。如果你的宽度太高,底部会出现一个空白区域。
是否存在强制给定宽高比的设置?
或者我现在可以收听window.resizeTo(height*1.333,height)
个活动,以便我可以在更改窗口大小后立即应用 public ActionResult TestUpdate()
{
int id = 3; // this is the FK which exists on the Transactions table.
var results = db.StoreTransactions.Find(id);
if(results != null)
{
results.TransStatus = "Completed";
db.SaveChanges();
}
}
答案 0 :(得分:3)
似乎有一个resize事件:
您可以使用这样的代码来设置您的事件监听器:
gui = require('nw.gui');
w = gui.Window.get();
w.on('resize', yourFunctionHere);
但要小心改变处理程序中的窗口大小(例如使用resizeTo()
),因为这将触发调整大小并可能导致各种混乱。它可能会使调整大小以当前宽高比为条件,但我可以想象,如果达到某个限制或其他限制,你仍然会遇到问题。我不知道是否有一些设施(类似于事件冒泡& c)在这种情况下会有所帮助。