Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > Ext JS / Sencha
Ext JS / Sencha Ext JS / Sencha Forum d'entraide sur les frameworks Ext JS et Sencha. Avant de poster : FAQ ExtJS / Sencha, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/02/2011, 17h41   #1
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 249
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 249
Points : 240
Points : 240
Par défaut Cacher un onglet

Bonjour,

Je cherche à cacher un onglet juste après sa création (pour le faire réapparaître un peu plus tard)
J'utilise je pense la bonne méthode mais rien ne ce passe ...

voici mon code :
Code :
1
2
3
4
5
6
7
8
var layoutCenter = new Ext.TabPanel({
		region: 'center',
		id: 'layoutCenter',
		title: 'Liste',
		activeTab: 0,
		margins: '5 5 5 0',
		items: [accueilCat, navigation]
});
Code :
1
2
3
4
5
6
7
8
9
10
var navigation = new Ext.Panel(
	{
		title: 'Navigation',
		id: 'navigation',
		border: false,
		autoScroll: true,
		//hidden: true,
		body: ''
	}
);
J'ai essayé ceci :
Code :
Ext.getCmp('layoutCenter').hideTabStripItem('navigation');
Puis :
Code :
Ext.getCmp('layoutCenter').items.items[1].hide();
Mais rien ne ce passe :/
Je n'est aucune erreur...

Si vous pouviez m'apporter vos lumières : )))

Merci par avance ^^
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2011, 18h21   #2
Membre éclairé
 
Avatar de JulienFio
 
Julien Fiorentino
Inscription : novembre 2007
Messages : 201
Détails du profil
Informations personnelles :
Nom : Julien Fiorentino
Âge : 28
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : novembre 2007
Messages : 201
Points : 336
Points : 336
Bonjour,

Essayes:
Code :
1
2
 
var monItem = Ext.getCmp('layoutCenter').getItem('navigation'); //Pour récupérer ton item
ensuite pour le cacher:
Code :
1
2
3
4
 
monItem.hide();
//ou
monItem.setVisible(false);
Sinon ton erreur provient peut-être de ceci:
Code :
1
2
 
Ext.getCmp('layoutCenter').hideTabStripItem(Ext.getCmp('navigation'));
JulienFio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 09h20   #3
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 249
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 249
Points : 240
Points : 240
Je viens de tester les 3 solutions mais aucune ne fonctionne...
Aucune remontrée d'erreur
quand je fait un il me retourne bien l'objet (panel) que je veux cacher.

Je n'est pas préciser dans mon premier post mais le faite que le tabPanel que je veux traiter ce trouve lui même dans un tabPanel ne gène en rien ?
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 09h37   #4
Membre éclairé
 
Avatar de JulienFio
 
Julien Fiorentino
Inscription : novembre 2007
Messages : 201
Détails du profil
Informations personnelles :
Nom : Julien Fiorentino
Âge : 28
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : novembre 2007
Messages : 201
Points : 336
Points : 336
Le container que tu souhaites cacher c'est bien un Panel non ?
Code :
1
2
3
4
5
6
7
8
9
10
var navigation = new Ext.Panel(
	{
		title: 'Navigation',
		id: 'navigation',
		border: false,
		autoScroll: true,
		//hidden: true,
		body: ''
	}
);
Contenu par ton tabPanel. C'est bien ça ? ou est-ce qu'en fait ton container 'navigation' est en fait un tabPanel ? Si oui, c'est peut-être ça qui pose problème
JulienFio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 09h38   #5
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 249
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 249
Points : 240
Points : 240
je confirme que 'navigation ' est bien un panel et que c'est lui que je veux cacher.

Je viens de tester
Code :
1
2
3
monItem.hide();
//et
monItem.setVisible(false);
Dans la console de firebug et cela ne fonctionne pas non plus alors que
Code :
Ext.getCmp('reportinglayoutCenter').hideTabStripItem(Ext.getCmp('navigationReport'));
fonctionne dans la console (mais pas dans le code....).
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 09h59   #6
Membre éclairé
 
Avatar de JulienFio
 
Julien Fiorentino
Inscription : novembre 2007
Messages : 201
Détails du profil
Informations personnelles :
Nom : Julien Fiorentino
Âge : 28
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : novembre 2007
Messages : 201
Points : 336
Points : 336
Peux-tu poster ton code en entier ? (y compris ton tabPanel qui contient ton second tabPanel)
JulienFio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 10h07   #7
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 249
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 249
Points : 240
Points : 240
oups j'ai édité mon post en même temps que tu répondais...

J'espère ne pas oublier de partie...
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var tab = new Ext.TabPanel(
		{
			id: 'mainTab',
			border: false,
			region: 'center',
			deferredRender: true,
			activeTab: 0,
			plain: true,
			items: [
				{
					title: Accueil,
					layout: 'fit',
					closable: false,
					border: false,
					autoScroll: true,
					items: new accueillayout()
				}
			]
		}
	);
Code :
Ext.getCmp('mainTab').add(reportlayout);
Code :
1
2
3
4
5
6
7
8
9
10
11
12
reportlayout = Ext.extend(Ext.Panel, {
	id:'reportlayout',
	title: module2,
	layout: 'border',
	border: false,
	initComponent: function() {
		this.items = [
				layoutWest, layoutCenter
		];
		reportlayout.superclass.initComponent.call(this);
	}
});
Code :
1
2
3
4
5
6
7
8
var layoutCenter = new Ext.TabPanel({
		region: 'center',
		id: 'layoutCenter',
		title: 'Liste',
		activeTab: 0,
		margins: '5 5 5 0',
		items: [accueilCat, navigation]
});
voilà, bonne lecture ^^
(Au passage si il y a moyen d'optimiser mon code je suis preneur : p)
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 10h58   #8
Membre éclairé
 
Avatar de JulienFio
 
Julien Fiorentino
Inscription : novembre 2007
Messages : 201
Détails du profil
Informations personnelles :
Nom : Julien Fiorentino
Âge : 28
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : novembre 2007
Messages : 201
Points : 336
Points : 336
Je pense que tu as un problème dans la hiérarchie de tes container, quand je teste la méthode
Code :
Ext.getCmp('layoutCenter').hideTabStripItem(Ext.getCmp('navigation'));
Cela fonctionne très bien pour mon code.

Mon cas de figure:
Panel -> tabPanel -> deux panels // J'en cache un des deux

Déjà, reportlayout est un constructeur (qui étend de Ext.Panel), je pense qu'il serait plus judicieux de l'instancier en faisant un new reportlayout(); plutot qu'un simple add(reportLayout)
JulienFio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 17h17   #9
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 249
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 249
Points : 240
Points : 240
J'ai testé et rien a faire...
J'ai testé la disable sur ce même onglet et la par contre ça fonctionne

Donc comme la désactivation fonctionne je vais laisser le disabled ^^

Merci pour ton aide : )))

Au passage tu serais si on peu ouvrir un .pdf dans extjs ?
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h42.


 
 
 
 
Partenaires

Hébergement Web