ExtJS: Comment étendre un Poste.Panneau avec un BorderLayout?
J'essaie d'afficher un panneau avec un BorderLayout. Le panneau affiche est une instance d'un Poste.Panneau de sous-classe. J'ai eu le panneau d'affichage parfaitement avant de tenter d'ajouter la mise en page, mais avec la mise en page a ajouté qu'il ne montre pas du tout, sans jeter des erreurs ou donner de la rétroaction utile que ce soit. En utilisant exactement les mêmes attributs, mais pas de sous-classement, le panneau fonctionne aussi très bien.
Pour démontrer, avec le code directement à partir de la ExtJS BorderLayout API, cela fonctionne:
var win = new Ext.Panel({
renderTo: document.body,
width: 700,
height: 500,
title: 'Border Layout',
layout: 'border',
items: [{
title: 'South Region is resizable',
region: 'south', //position for region
height: 100,
split: true, //enable resizing
minSize: 75, //defaults to 50
maxSize: 150,
margins: '0 5 5 5'
},{
//xtype: 'panel' implied by default
title: 'West Region is collapsible',
region:'west',
margins: '5 0 0 5',
width: 200,
collapsible: true, //make collapsible
cmargins: '5 5 0 5', //adjust top margin when collapsed
id: 'west-region-container',
layout: 'fit',
unstyled: true
},{
title: 'Center Region',
region: 'center', //center region is required, no width/height specified
xtype: 'container',
layout: 'fit',
margins: '5 5 0 0'
}]
});
et ce n'est pas:
BasePanel = Ext.extend(Ext.Panel, {
renderTo: document.body,
width: 700,
height: 500,
title: 'Border Layout',
layout: 'border',
items: [{
title: 'South Region is resizable',
region: 'south', //position for region
height: 100,
split: true, //enable resizing
minSize: 75, //defaults to 50
maxSize: 150,
margins: '0 5 5 5'
},{
//xtype: 'panel' implied by default
title: 'West Region is collapsible',
region:'west',
margins: '5 0 0 5',
width: 200,
collapsible: true, //make collapsible
cmargins: '5 5 0 5', //adjust top margin when collapsed
id: 'west-region-container',
layout: 'fit',
unstyled: true
},{
title: 'Center Region',
region: 'center', //center region is required, no width/height specified
xtype: 'container',
layout: 'fit',
margins: '5 5 0 0'
}]
});
var win = new BasePanel();
Ai-je raté quelque chose d'évident ici?
Merci pour toute aide.
OriginalL'auteur oogles | 2010-07-29
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin pour créer le contrôle réel, puis l'étendre:
Ajout d'un code de l'instancier.
J'ai été y compris l'instanciation 🙂 Toujours pas de chance, j'ai peur. Et toujours pas d'erreurs de rappeler pourquoi il ne fonctionne pas.
Juste assez, je pourrais en avoir besoin pour l'exécuter.
Édité. S'avère que la réponse a été d'ajouter des éléments à la commission, dans le constructeur, et non pas dans l'extension de l'objet de propriété.
OriginalL'auteur Igor Zevaka