2016-10-21 25 views
2

他のウィンドウを開く前にウィンドウを閉じたいと思っていますが、うまくいきませんでしたが、うまくいきません。他のウィンドウを開く前にExtJSウィンドウを閉じる

私のコードのスニペット:あなたはExt.WindowManagerを使用することができます

listeners: { 
    click: function() { 
     var win = new Ext.window.Window({ 
      constrain: true, 
      height: 300, 
      title: 'Window', 
      width: 300, 
      closeAction: 'hide' 
     }); 
     if (win.isVisible() !== true) { 
      win.show(); 
     } else { 
      win.close(); 
     } 
    } 
} 
+0

勝利は、同じウィンドウのですか? –

+0

urを最初に閉じて2番目のウィンドウを開いた後に、警告またはポップアップウィンドウを表示したいですか? – UDID

+1

'win.isVisible()!== true' *頭の傷* –

答えて

0
var win = new Ext.window.Window({ 
      constrain: true, 
      height: 300, 
      title: 'Window', 
      width: 300, 
      closeAction: 'hide', 
      listeners:{ 
       beforeclose:function(){ 
        Ext.Msg.alert('Close','You\'re closing Window',function(){ 
         var win2== new Ext.window.Window({ 
          constrain: true, 
          height: 300, 
          title: 'Window2', 
          width: 300, 
          closeAction: 'hide' 
         }); 
         win2.show(); 
        }); 
       } 
      } 
     }); 
     win.show(); 
1

。あなたはあなたの窓にbeforecloseイベントを追加する必要が

Ext.create('Ext.Button', { 
 
    text: 'Click me', 
 
    renderTo: Ext.getBody(), 
 
    listeners: { 
 
    click: function() { 
 
     Ext.WindowManager.each(function(cmp) { 
 
     cmp.close(); 
 
     }); 
 
     Ext.create('Ext.window.Window', { 
 
     constrain: true, 
 
     height: 300, 
 
     title: 'Window', 
 
     width: 300, 
 
     closeAction: 'hide' 
 
     }).show(); 
 
    } 
 
    } 
 
})
<script src="http://cdn.sencha.com/ext/gpl/4.2.0/ext-all.js"></script> 
 
<link href="http://cdn.sencha.com/ext/gpl/4.2.0/resources/css/ext-all.css" rel="stylesheet" />

+0

おかげさまで、 – Joy

0

。あなたは新しいウィンドウを呼び出します。

Ext.application({ 
 
    name: 'Fiddle', 
 
    launch: function() { 
 
     let i = 1; 
 
     function create_window(title) { 
 
      var win = new Ext.window.Window({ 
 
       constrain: true, 
 
       height: 150, 
 
       title: 'Window ' + title, 
 
       width: 300, 
 
       closeAction: 'hide', 
 
       listeners: { 
 
        beforeclose: function (sender, options) { 
 
         i++; 
 
         create_window(i); 
 
         return true; 
 
        } 
 
       } 
 
      }); 
 
      if (win.isVisible() !== true) { 
 
       win.show(); 
 
      } else { 
 
       win.close(); 
 
      }  
 
     } 
 
     create_window(i); 
 
    } 
 
});
<script src="http://cdn.sencha.com/ext/gpl/4.2.0/ext-all.js"></script> 
 
<link type="text/css" rel="stylesheet" href="http://cdn.sencha.com/ext/gpl/4.2.0/resources/css/ext-all.css")/>

関連する問題