IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flex Discussion :

Evenement sur item dans une liste


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2009
    Messages : 84
    Par défaut Evenement sur item dans une liste
    Bonjour à tous,

    Existe-t-il un moyen d'agir sur un item spécifique dans une liste? Je m'explique voici l'enchainement que j'aimerais obtenir :

    Ecran 1 --> formulaire après validation on passe sur une liste ou j'affiche que le nom et le prénom --> Ecran 2

    maintenant je voudrais que lorsque l'utilisateur clique sur un item de la liste le détail apparaisse cad le nom et le prénom ainsi que l'age, la date de naissance, et le sexe.

    j'ai réussi à obtenir cette enchainement mais mon souci c'est que j'utilise l'évènement clique de ma liste comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mx:Canvas label="Liste" width="100%" height="100%" id="List" click="zoomDetail()">
    la méthode zoomDetail() me permet uniquement de changer d'écran et de basculer sur mon dataGrid. le souci c'est je veux afficher dans le datagrid les propriétés de l'item sur lequel j'ai cliqué et uniquement celui-ci alors que la je vois tous les items.

    merci

    Bilou

  2. #2
    Membre Expert
    Avatar de Jim_Nastiq
    Homme Profil pro
    Architecte, Expert Flex
    Inscrit en
    Avril 2006
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte, Expert Flex
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 335
    Par défaut
    Salut,

    Tu peux par exemple créer 2 itemRenderer pour ta liste, un représentant la vue minimale et l'autre la vue détaillées. Ensuite, il te suffit de switcher avec des états (states) entre les 2 itemrenderer

    Pensez vraiment à effectuer une recherche avant de poster, ici et sur un moteur de recherche! c'est la moindre des choses
    Pensez au tag

    Mon Blog sur la techno Flex
    Ma page sur Developpez.com

    Jim_Nastiq

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2009
    Messages : 84
    Par défaut
    Hello,

    merci pour ton aide.

    c'est une bonne solution le seul souci c'est qu'en fait je ne sais pas comment appelé un itemRenderer dans le mxml.

    Malgré toute la doc sur le sujet j'ai du mal avec les Custom itemRenderer.

    en fait j'ai étendu la classe itemRenderer. Ensuite j'ai voulu surcharger la méthode set data() a priori c'est ce qu'il faut faire du moins c'est ce que j'ai compris mais dis moi si je me trompe. c'est dans cette méthode set data que tu fais les bon affichages apparemment.

    au moment ou je veux surchargé la méthode il me dit override incompatible.
    voilà où j'en suis dans ma démarche. que faut-il faire? dois-je procéder différemment? Est-ce que je suis dans une bonne logique?

    merci

    Bilou69

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Par défaut
    Montre ton code ça sera plus facile pour nous.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2009
    Messages : 84
    Par défaut
    Re,

    j'ai résolu une partie du pb l'override était impossible parce que comme d'habitude je ne respectais pas la signature de la méthode set data. je voulais retourner un String alors qu'il faut retourner void.

    voilà le code de la classe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    	import mx.controls.List;
     
    	public class myItemRenderer extends List {
     
    		public function myItemRenderer() {
    			super();
    		}
    		override public function set data(value : Object) : void {
    			super.data=value;
    			if (value!=null){
    				// traitement pour l'affichage
    			}else{
    				this.invalidateDisplayList();
    			}
    		}
    	}
    }
    mon souci c'est que je ne vois pas comment traiter l'affichage en fait.

    merci

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Par défaut
    N'oublie pas le tag résolu dans ce cas

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 12/05/2015, 13h40
  2. Réponses: 0
    Dernier message: 13/03/2008, 08h51
  3. [VB6] Double click d'un item dans une list...
    Par Jihnn dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 15/04/2006, 18h56
  4. Selectionner automatiquement un item dans une liste
    Par nebule dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 09/12/2004, 17h03
  5. Réponses: 2
    Dernier message: 17/08/2003, 20h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo