событие на нажатие кнопки
в ext designer набросала форму редактора формулы.что-то вроде калькулятора.мне надо чтобы при нажатии например кнопки с значение "1" в текстовой строке появилось значение "1".extjs начала изучать недавно..очень срочно надо!!!!!!!!:help:
вот что пока сделала:
MyWindow = Ext.extend(MyWindowUi, {
initComponent: function() {
MyWindow.superclass.initComponent.call(this);
this.findById("save").on("click", function(button, event) {
Ext.MessageBox.show({
title:'Сообщение',
msg: 'Сохранить?',
buttons: Ext.MessageBox.OKCANCEL,
animateTarget: 'mb4',
icon: Ext.MessageBox.QUESTION
});
});
this.findById("cancel").on("click", function(button, event) {
Ext.MessageBox.show({
title:'Сообщение',
msg: 'Отменить?',
buttons: Ext.MessageBox.OKCANCEL,
animateTarget: 'mb4',
icon: Ext.MessageBox.QUESTION
});
});
}
});
заранее очень благодарна! |
Ну может как-то так:
new Ext.Window({
title: 'Калькулятор',
layout: 'fit',
width: 700,
height: 550,
buttons: [{
text: '1',
handler: function(){
Ext.getCmp('id-field').setValue(+'1');
},{
text: '2',
handler: function(){
Ext.getCmp('id-field').setValue(+'2');
}
}]
});
И если вы только начали не учите 3-й. Учите 4-й ExtJS |
ane4ka,
судя по коду, вы очень любите jQuery)) а вот так
this.findById("save")
в ExtJS 4+ не прокатит))можно как-то так:
Ext.create('Ext.window.Window', {
title: 'Калькулятор',
width: 300,
setInputValue: function(v){
var input = this.down('textfield');
input.setValue(input.getValue()+v);
},
setSumResult: function(){
var input = this.down('textfield'),
arr = input.getValue().split('+'),
val = 0;
for(var i=0; i<arr.length; i++){
val+=parseInt(arr[i]);
}
input.setValue(val);
},
height: 300,
buttons: [
{
text: '1',
handler: function(){
this.up('window').setInputValue(this.text);
}
}, {
text: '2',
handler: function(){
this.up('window').setInputValue(this.text);
}
}, {
text: '+',
handler: function(){
this.up('window').setInputValue(this.text);
}
}, {
text: '=',
handler: function(){
this.up('window').setSumResult();
}
}
],
items: [
{
layout: 'table',
items: [
{
xtype: 'textfield',
hideLabel: true
}
]
}
]
}).show();
|
Цитата:
|
+1. Цепочки - это, блеать, особенность JS, а не jQuery!
|
Цитата:
я просто указал что в ExtJS 4 такого метода нет, ибо он является устаревшим. Цитата:
setHandler здесь применяться должен... |
Цитата:
насмешил... |
спасибо всем большое!очень помогли:)
и не ссорьтесь))) |
nekto_O, я имел в виду, что это не jQuery позволяет реализовывать цепочные вызовы, а сам язык. Про другие языки я вообще не слова не сказал. Думаю, спорить больше не о чем)
|
Цитата:
Цитата:
upd и вообще само определение "цепочки" бред... |
| Часовой пояс GMT +3, время: 00:17. |