次のように、ウィンドウにツール (検索、ヘルプ、ギアなど) を動的に追加したい: http://www.rahulsingla.com/sites/default/files/content/blog/extjs/extjs-panel -add-tool.htm
また、UIMyWindow の複数のインスタンスを同時に作成する必要があります。
ただし、2 つのファイルを生成する Ext Designer を使用しています。
- MyWindow.ui.js: クラス宣言。
- MyWindow.js: メソッドの実装。
また、Ext Designer には、デザイン時に [ツール] オプションがありません (見つけられませんでした)。
次のように、MyWindow.js と MyWindow.ui.js の外にツールを追加していました。
var winMyWindow = new UIMyWindow({
autoShow: 'true',
tools: [{
type:'gear',
handler: function(){
// Some code...
}
}]
});
しかし、このブロックを MyWindow.js 内に配置したいと考えています。だから、私はこれをしました:
UIMyWindow = Ext.extend(UIMyWindowUi, {
tools: [{
type:'gear',
handler: function(){
// Some code...
}
}],
initComponent: function() {
UImenuDock.superclass.initComponent.call(this);
「なぜこのコードを MyWindow.ui.js の中に入れないのですか?」と聞かれたら、「デザイン ファイル (Ext Designer) を変更するたびにこのコードを手動で入れたくないから」と答えます。
1 つのウィンドウを開くと問題ないようですが、同時に 2 つ目のウィンドウを開くと、2 つ目のウィンドウにツールが重複して表示されます...
では、この特定のケースで MyWindow.js にツールを動的に追加する方法はありますか?