1

編集可能セルの [Tab] をクリックすると、メッセージ ウィンドウがパネルの後ろに隠れます。

例: 最初の電話セルをダブルクリックし、TAB ボタンを押します。メッセージ ボックスが表示され、グリッド ウィンドウの後ろに隠れることができます。

Ext.create('Ext.data.Store', {
    storeId: 'simpsonsStore',
    fields: ['name', 'email', 'phone'],
    data: {
        'items': [{
            'name': 'Lisa',
            "email": "lisa@simpsons.com",
            "phone": "1224"
        }, {
            'name': 'Bart',
            "email": "bart@simpsons.com",
            "phone": "1234"
        }, {
            'name': 'Homer',
            "email": "home@simpsons.com",
            "phone": "1244"
        }, {
            'name': 'Marge',
            "email": "marge@simpsons.com",
            "phone": "1254"
        }]
    },
    proxy: {
        type: 'memory',
        reader: {
            type: 'json',
            root: 'items'
        }
    }
});

var table = Ext.create('Ext.grid.Panel', {
    title: 'Simpsons',
    store: Ext.data.StoreManager.lookup('simpsonsStore'),
    columns: [{
        text: 'Name',
        dataIndex: 'name',
        editor: {
            xtype: 'textfield'
        }
    }, {
        text: 'Email',
        dataIndex: 'email',
        flex: 1
    }, {
        text: 'Phone',
        dataIndex: 'phone',
        editor: {
            xtype: 'numberfield',
            hideTrigger: true,
            validateOnChange: false
        }
    }],
    height: 200,
    width: 400,
    plugins: [Ext.create('Ext.grid.plugin.CellEditing', {
        clicksToEdit: 2
    })],
    listeners: {
        'validateedit': function () {
            Ext.MessageBox.show({
                icon: Ext.MessageBox.ERROR,
                buttons: Ext.MessageBox.OK,
                title: 'test',
                msg: 'test'
            });
        }
    }
});
tablePanel.add(table);
tablePanel.show();

});

誰もそのような問題に遭遇しましたか?

4

1 に答える 1

2

Sencha サイトから回答を得ました:

これは 4.07 では行われず、4.1 では行われるようです。開発チームと話します。

今のところ、defer を使用できます。

Code:
listeners:{
    'validateedit':function(){
        Ext.MessageBox.show({
        icon: Ext.MessageBox.ERROR,
        buttons: Ext.MessageBox.OK,
        title: 'test',
        msg: 'test'
      }).defer(100);
    }
}
于 2012-10-08T00:02:37.337 に答える