2012-02-07 2 views
0

Это сводит меня с ума, и я попробовал несколько различных вариантов. Я просматриваю все материалы here, пытаясь вкратце сделать ExtJS 4 в моем мозгу, насколько это возможно для проекта. В разделе «Рисование и диаграммирование» есть два примера. Ниже, первый пример рисует желтый круг, второй пример не рисует круг. Зачем?ExtJS 4 Рисунок и рисунок Пример не рисования

Первый пример (рисует желтый круг):

Ext.application({ 
name: 'HelloExt', 
launch: function(){ 
    var drawComponent = Ext.create('Ext.draw.Component', { 
     viewBox: false, 
     items: [{ 
      type: 'circle', 
      fill: '#ffc', 
      radius: 100, 
      x: 100, 
      y: 100 
     }] 
    }); 

    Ext.create('Ext.Window', { 
     width: 230, 
     height: 230, 
     layout: 'fit', 
     items: [drawComponent] 
    }).show(); 
} 
}); 

Второй пример (рисует не круг):

Ext.application({ 
name: 'HelloExt', 
launch: function(){ 
    // Create a draw component 
    var drawComponent = Ext.create('Ext.draw.Component', { 
     viewBox: false 
    }); 

    // Create a window to place the draw component in 
    Ext.create('Ext.Window', { 
     width: 220, 
     height: 230, 
     layout: 'fit', 
     items: [drawComponent] 
    }).show(); 

    // Add a circle sprite 
    var myCircle = drawComponent.surface.add({ 
     type: 'circle', 
     x: 100, 
     y: 100, 
     radius: 100, 
     fill: '#cc5' 
    }); 
} 
}); 

Я пробовал бесчисленное количество способов добавления Sprite к drawComponent а только это работает, если я даю его как объявленный элемент элементов в экземпляре drawComponent. Я не получаю ошибок в консоли.

ответ

1

Исправление включает в себя добавление .show(true) в конец спрайта спрайта. Например:

var myCircle = drawComponent.surface.add({ 
    type: 'circle', 
    x: 100, 
    y: 100, 
    radius: 100, 
    fill: '#cc5' 
}).show(true); 

Мне очень жаль, что это не было в документации ExtJS 4.

Смежные вопросы