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

Flash Discussion :

[FLASH MX 2004] [DataGrid] Tri numérique / CellRenderer?


Sujet :

Flash

  1. #1
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut [FLASH MX 2004] [DataGrid] Tri numérique / CellRenderer?
    Bonjour,

    j'utilise un DataGrid.
    Je souhaite effectué un tri numérique sur un colonne avec des données numériques (2 en réalité mais une fois que je sais le faire pour une ). Malheureusement, il me fait un tri alphabétique
    Voilà comment je m'y prends:

    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
    var sizeSort:Boolean = true;
    var testSort:Boolean = true;
    var sortListener = new Object();
    sortListener.headerRelease = function(event) {
    	if (event.columnIndex == 0) {
    		var sort = sizeSort ? "ASC" : "DESC";
    		sizeSort = !sizeSort;
    		myDataGrid_dg.dataProvider.sortItemsBy("fsize", sort, Array.NUMERIC);
    	}
    	if (event.columnIndex == 1) {
    		var test = testSort ? "ASC" : "DESC";
    		testSort = !testSort;
    		data_array.sortItemsBy("ftest", test, Array.NUMERIC);
    		myDataGrid_dg.dataProvider = data_array;
    	}
    };
    myDataGrid_dg.addEventListener("headerRelease", sortListener);
    Comment dois-je mis prendre?
    Les sources sont ici : http://membres.lycos.fr/pfe26/mx2004...-TriNumerique/

    J'en profite, j'aurai également une question sur les cellRenderer
    J'ai formaté la colonne pour qu'elle affiche les tailles en octets sous forme o, Ko ou Mo. Les données réelles contenues dans le tableau sont des entiers (cliquer sur la cellule pour les valeurs réelles)
    Je suis passé par un cellRenderer (SizeCellRenderer dans mon cas) pour reformater l'affichage mais aussi pour faire un alignement à droite.
    Le reformatage, j'aurais pu le faire en passant par la fonction DataGridColumn.labelFunction (Ca marche) mais je n'ai pas trouvé de moyen d'aligner à droite.
    Y-a-t'il un autre moyen que de passer par un cellRenderer?

    Merci d'avance
    Greg
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  2. #2
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    je voulais te demander as tu essaye sans reformaté ta cellule taille

    j'ai l'impression que c cette ligne qui pose problème

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    display = (n/1024).toString();

  3. #3
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    La colonne de droite ne se trie pas non plus et il n'y a aucun formattage sur cette colonne

    Citation Envoyé par bolo
    je voulais te demander as tu essaye sans reformaté ta cellule taille

    j'ai l'impression que c cette ligne qui pose problème

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    display = (n/1024).toString();
    Qu'est-ce qui te faisait dire ça?


    Ps : J'ai légéremment modifié le fla en ligne, pour ce soit les mêmes données dans les 2 colonnes
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  4. #4
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    oui j"avais mal vue ,

  5. #5
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    pourrais tu me refiler ton fichier xml ?

  6. #6
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  7. #7
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    regarde normalement le trie numérique fonctionne
    http://flash.developpez.com/fla/TriNumerique.zip

  8. #8
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut


    Avec ça, je devrais arriver à me débrouiller.


    Résolu (J'enleverai si nécessaire )

    <mode raleur>
    Cependant, je ne comprends toujours pas pourquoi ce que je faisais ne marche pas
    </mode raleur>
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  9. #9
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    en fait je prefère pas m'avancer pour trier un datagrid il faut je crois utiliser un dataSet

    je suis pas sur

  10. #10
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Bon finalement ta solution (avec un dataset), qui marche (je tiens à le préciser), ne me convient pas dans mon cas(Pour d'autres raisons).

    Cependant j'ai trouvé comment faut faire dans mon cas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var sizeSort:Boolean = true;
    var sortListener = new Object();
    sortListener.headerRelease = function(event) {
    	if (event.columnIndex == 4) {
    		var sort = sizeSort ? Array.NUMERIC : Array.NUMERIC|Array.DESCENDING;
    		sizeSort = !sizeSort;		
    		myDataGrid_dg.dataProvider = myDataGrid_dg.dataProvider.sortOn("fsize", sort);
    	}
    };
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  11. #11
    Membre émérite
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Points : 2 695
    Points
    2 695
    Par défaut
    t'es un chef

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

Discussions similaires

  1. DataGrid tri numérique
    Par pimpampoum66 dans le forum Flex
    Réponses: 1
    Dernier message: 14/01/2011, 15h44
  2. [FLASH 8] DataGrid - tri par rapport à la colonne
    Par aldo-tlse dans le forum Flash
    Réponses: 10
    Dernier message: 02/12/2005, 16h28
  3. Réponses: 3
    Dernier message: 26/05/2004, 22h27
  4. [FLASH MX 2004 PRO] DataGrid
    Par kenshi dans le forum Flash
    Réponses: 2
    Dernier message: 26/04/2004, 10h21
  5. [Flash mx 2004 ] DataGrid
    Par bolo dans le forum Flash
    Réponses: 4
    Dernier message: 18/12/2003, 19h15

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