Javascript extjs桌面,无法保存窗口位置
我需要将窗口的位置和大小保存到db表中, 因此: 在事件创建->保存位置和大小时 事件移动时->保存位置 在事件调整->保存大小时 在事件最大化->保存最大化,但不是位置0,0和大小desktopSize 在这种情况下有必要: 用户注销并登录 按下恢复按钮 窗口应缩小到最大化之前的大小和位置 只有在数据库中保留旧的位置和大小时,才能实现这一点 某些事件启动某些函数,通过AJAX将值存储到db,顾名思义: 调整大小:saveSize 移动:保存位置 最大化:保存最大化 还原:还原窗口 但我不知道如何处理这些事件,因为这些事件并没有像我希望的那样被触发。因此,我需要存储的值在我有机会获取它们之前会被覆盖。我记录了以下事件: 案例->事件 打开窗口: 1.移动 2.调整大小 3.移动 没关系 单击最大化: 1.调整大小 2.移动 3.最大化 位置和大小值被覆盖,但只需要保存标志maximized:true 单击恢复: 1.移动 2.恢复 3.调整大小 位置保存到db中,然后才能从db中获取旧值进行恢复 移动窗口: -移动 一切都很好Javascript extjs桌面,无法保存窗口位置,javascript,extjs,event-handling,resize,Javascript,Extjs,Event Handling,Resize,我需要将窗口的位置和大小保存到db表中, 因此: 在事件创建->保存位置和大小时 事件移动时->保存位置 在事件调整->保存大小时 在事件最大化->保存最大化,但不是位置0,0和大小desktopSize 在这种情况下有必要: 用户注销并登录 按下恢复按钮 窗口应缩小到最大化之前的大小和位置 只有在数据库中保留旧的位置和大小时,才能实现这一点 某些事件启动某些函数,通过AJAX将值存储到db,顾名思义: 调整大小:saveSize 移动:保存位置 最大化:保存最大化 还原:还原窗口 但我不知道如
如何处理此问题???不要手动执行此操作,而是使用组件状态处理:陷入了我自己的想法。忘了问问extjs是如何管理的:最大化和恢复 状态存储在窗口对象本身中:
scope = win.events.maximize.listeners[0].scope;
(object) size = scope.restoreSize
[] position = scope.restorePos
因此,事件最大化是在最后触发的,因此我可以将之前的状态写入db,我认为这有点脏,因为我不知道为什么extjs如此频繁地触发事件这只在会话中起作用!我可以保存适当的值,但在我可以这样做之前状态会更改。所以我需要以某种方式处理这些事件。。。