我有一个窗口,窗口我以编程方式更改窗口的大小,具体取决于它显示的当前视图。用户无法自己调整窗口大小,但他们可以最大化窗口。
问题是如果视图在最大化时被更改,最大化的窗口大小会改变,我不希望这样,我希望它只改变非最大化窗口的大小。
我的第一个想法只是检查窗口是否最大化,如果是这样,不要调整它...但是问题是当它在不同的视图恢复时然后当它最大化时它将不会恢复到应该是新的尺寸。
对此有何想法?
谢谢!
答案 0 :(得分:0)
有两种状态,最大化和正常。在最大化状态下,将宽度和高度设置为标准最大值。在正常状态下,将它们设置为您使用当前正常宽度和高度存储的一些变量。换句话说,当尺寸改变时,除非当前处于正常模式,否则不要自动设置宽度和高度。在名为normalWidth
和normalHeight
的变量中保存新的法线宽度和高度。
你说的可能看起来像这样
<mx:States>
<mx:State name="normal">
<mx:SetProperty name="width" value="{normalWidth}"/>
<mx:SetProperty name="height" value="{normalHeight}"/>
</mx:State>
<mx:State name="maximized">
<mx:SetProperty name="width" value="{MAX_WIDTH}"/>
<mx:SetProperty name="height" value="{MAX_HEIGHT}"/>
</mx:State>
</mx:States>
答案 1 :(得分:-3)
嗯,我尝试了很多东西,但似乎都没有准确。所以现在我只是在最大化时改变了视图/状态。有点跛,但它使它不能正确执行。