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

MXML Discussion :

datagrid editable Itemrenderer avec checkbox


Sujet :

MXML

  1. #1
    Membre du Club

    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 45
    Points : 67
    Points
    67
    Par défaut datagrid editable Itemrenderer avec checkbox
    Bonjour,
    je viens vers vous car je viens de passer une bonne partie du week end à chercher ce qui n'allait pas.
    Je souhaite progresser en Flex et voila pourquoi je m'accroche... mais la je suis pour le moins battu...


    Je souhaite travailler sur une table d'une base de données MySQL.
    Je suis parti du menu "Data" de Flex 3 permettant de générer un formulaire pour ma table.

    J'ai un champ dans ma base de données qui a comme valeur 0 ou 1 afin de valider ou non la publication.(que j'ai type comme étant comme un texte)

    Pour ce champ, j'aimerais que dans mon datagrid (qui est éditable=true) l'on coche une checkbox pour faire passer valider de "1" à "0" et vice et versa.

    J'ai donc ajouté pour ma colonne "valide" un itemrenderer avec une checkbox.
    Avec le code suivant :

    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
    19
    20
    21
    22
    <mx:DataGrid id="dataGrid"
    	dataProvider="{dataArr}"
    	rowCount="8"
    	editable="true"
            variableRowHeight="true" 
    	resizableColumns="false"
    	headerRelease="setOrder(event);"
    	right="10" left="10" top="10" bottom="71">
    	<mx:columns>
    		<mx:DataGridColumn visible="false" headerText="citation_id" dataField="citation_idCol" />
    		<mx:DataGridColumn width="200"  headerText="Citation" wordWrap="true" dataField="citation_textCol"/>
    		<mx:DataGridColumn width="45"  headerText="Auteur" dataField="citation_authorCol" />
    		<mx:DataGridColumn width="80"  headerText="Qualité de l'auteur" dataField="citation_author_descCol" />
    		<mx:DataGridColumn width="30" headerText="Validé" editorDataField="selected" dataField="citation_validCol" rendererIsEditor="true">
    		<mx:itemRenderer>
                         <mx:Component>
                               <mx:CheckBox selected="{data.citation_validCol==1}"/>
    		      </mx:Component>
    		</mx:itemRenderer>
    	</mx:DataGridColumn>
    	</mx:columns>
    </mx:DataGrid>
    Vous allez me dire pourquoi data.citation_validCol==1, sans cette vieille feinte mon checkbox ne se checkait pas quand j'avais un 1 dans la colone...
    Comme mon datagrid est editable et que j'ai un écouteur sur son évenement EDIT_END j'aimerais que quand l'on clicke sur mon checkbox cela déclenche
    cet évènement en simulant une édition d'un case texte que l'on set à "0" ou à "1"...

    J'ai vu des codes on l'on fait un overwrite de la fonction set data et get data mais je ne suis pas familier avec cette syntaxe hélas...
    Je fais donc appel à votre aide pour voir de quelle issue je dispose car je seche vraiment...

    Je vous remercie par avance pour votre aide

    PS : J'ai mis mes sources actuelles ainsi que ma base de données pour que vous voyez plus clairement le probleme qui est le mien...

    BDD

    sources PHP

    Projet Flex

  2. #2
    Membre expérimenté

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

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Points : 1 710
    Points
    1 710
    Par défaut
    Salut,

    Si tu veux éditer les éléments d'une datagrid tu devrais essayer un itemEditor :
    http://www.flex-tutorial.fr/2009/03/...a-mise-a-jour/

    J'ai vu des codes on l'on fait un overwrite de la fonction set data et get data mais je ne suis pas familier avec cette syntaxe hélas...
    Je fais donc appel à votre aide pour voir de quelle issue je dispose car je seche vraiment...
    Je ne vois pas ce qu'il y a de très compliqué mais si tu as un peu de mal post ton code et on t'aidera. En fait il s'agit juste d'une externalisation de l'item renderer pour que celui ci puisse être utilisé à plusieurs endroits c'est tout.

  3. #3
    Membre du Club

    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 45
    Points : 67
    Points
    67
    Par défaut
    Je vais essayer de voir avec ce lien la et au besoin je reviendrais sur le forum pour vous dire ce qu'il en ai.

    Merci en tout cas !

  4. #4
    Membre averti Avatar de samy2525
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 259
    Points : 310
    Points
    310
    Par défaut CheckBoxItemRenderer
    Bonjour, je pense que le sujet est vraiment largement abordé dans le forum sinon sinon si tu veux évoler dans le domaine de Flex je te conseille d'aller plus vers le AS comme ça tu toucheras à beaucoup beaucoup de chose bref

    à mon avis et comme j'ai deja poster tu dois créer un item Renderer de ce type
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    package com.tonprojet.component.renderer
    {
     
     
    	import flash.events.Event;
    	import mx.containers.VBox;
    	import mx.controls.CheckBox;
     
    	public class CheckBoxAction extends VBox
    	{
    		private var checkBox : CheckBox;
    		public function CheckBoxAction()
    		{
    			super();
    			setStyle("horizontalCenter",0);
    			setStyle("verticalCenter",0);
     
     
    		}
     
    		override public function set data(value:Object):void {
     
                           if(value && 
                              value.hasOwnProperty("citation_validCol") &&
                               value.citation_validCol=="1"){
     
                                      checkBox.selected = true;
                            }
     
                            super.data = value;
     
    		}
     
    		override protected function createChildren():void{
     
    			super.createChildren();
    			checkBox = new CheckBox();
    			addChild(checkBox);
    		}
     
    	}
    }
    voila apés il faut juste applé cette class dans ton MXML

    en gros dans la ligne où tu as mis l'itemRenderer tu fais ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <mx:DataGridColumn width="30" headerText="Validé" editorDataField="selected" dataField="citation_validCol" 
    itemRenderer="com.tonprojet.component.renderer.CheckBoxAction">
    et voila ton code est prés à être utiliser

    Bon courage
    http://www.m-ataf.com (En cours de construction)

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/08/2012, 09h06
  2. ext js datagrid editable avec jsp
    Par hakimas dans le forum Ext JS / Sencha
    Réponses: 2
    Dernier message: 07/06/2010, 13h31
  3. [VB.NET]Probleme datagrid avec checkbox et pagination
    Par junoreactor dans le forum ASP.NET
    Réponses: 7
    Dernier message: 14/06/2007, 23h18
  4. [C#] Parcour de Datagrid avec CheckBox
    Par aurelien.tournier dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/10/2006, 19h18
  5. [C#]Datagrid avec checkboxs et pagination
    Par kenzo080 dans le forum ASP.NET
    Réponses: 6
    Dernier message: 19/07/2005, 07h10

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