Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flex
Flex Forum d'entraide sur la programmation Adobe Flex : applications Internet riches (RIA)
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 16/12/2010, 13h52   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2009
Messages : 77
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 77
Points : 13
Points : 13
Par défaut Supprimer un élement depuis son propre script

Hello,

J'ai créé un composant mxml "FlashMessage", un message qu'on affiche et qui se supprime après un timer.

Le problème, je ne sais pas comment appeler removeElement depuis l'élément que je veux supprimer.

Voici le script du composant mxml:

Code :
1
2
3
4
5
6
7
8
9
 
private function init():void {
	time.addEventListener(TimerEvent.TIMER_COMPLETE, del);
	time.start();
}
 
private function del(event:TimerEvent):void {
// méthode removeElement
}
dans ma fonction del, j'ai essayé
Code :
this.parent.removeElement(this);
qui ne fonctionne pas

j'ai donc écrit une fonction dans mon application principale qui cherche le composant dans tous les éléments présents sur la scène, un peu lourd mais ça fonctionne, sauf que la méthode removeElement ne fonctionne pas non plus.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
public function search(what:Object, sea:Object):void {
	if(what.hasOwnProperty("numElements")) {
		for(var i:Number = 0; i < what.numElements; i++) {
			if(what.getElementAt(i) == sea) {
				trace("found it !");
				what.removeElementAt(i);
				break;
			}
			search(what.getElementAt(i), sea);
		}
	}
}
Help =(
cocacola0589 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2010, 10h21   #2
Membre habitué
 
Maxime Faye
Développeur Web
Inscription : novembre 2006
Messages : 123
Détails du profil
Informations personnelles :
Nom : Maxime Faye
Âge : 27
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2006
Messages : 123
Points : 129
Points : 129
Envoyer un message via MSN à Maskime Envoyer un message via Skype™ à Maskime
Hello,

Est ce que un "object.visible=false" ne suffirait pas ?
__________________
Si je vous poste un bout de code pour vous aider, prenez bien en compte que je n'ai pas testé ce que je vous poste et que je vous donne les grandes lignes.
Donc ne me dites pas : "Ca marche pas ton truc, y a une erreur..."
Maskime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2010, 13h34   #3
Modérateur
 
Homme
Consultant Flex / Java
Inscription : novembre 2008
Messages : 452
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Luxembourg

Informations professionnelles :
Activité : Consultant Flex / Java
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2008
Messages : 452
Points : 637
Points : 637
Salut,
Citation:
Envoyé par cocacola0589 Voir le message
dans ma fonction del, j'ai essayé
Code :
this.parent.removeElement(this);
qui ne fonctionne pas
Ce ne serait pas plutôt :
Code :
this.removeElement(this);
Je n'ai jamais essayé mais cela me semble plus adapté.
__________________
N'oubliez pas avant de poster :
et bien sûr la doc Flex
Krazymins est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2010, 22h38   #4
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
Bonsoir,

ou sinon un dispatchEvent personnalisé avec envoi de la référence du fils vers le parent ? Suppression directement du parent ensuite donc
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h37.


 
 
 
 
Partenaires

Hébergement Web