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

Bibliothèques & Frameworks Discussion :

Changement de couleur de fond d'une ligne sur un datagrid


Sujet :

Bibliothèques & Frameworks

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 322
    Par défaut Changement de couleur de fond d'une ligne sur un datagrid
    Bonjour,

    J'utilise un datagrid pour gérer les utilisateur de mon application. Quand on double clique sur une ligne une dialog affiche le détail d'un utilisateur que l'on peut modifier ou désactiver/réactiver.
    J'ai un event onstylerow qui va changer la couleur de la ligne en gris dans le cas ou mon utilisateur est désactivé. Ceci fonctionne tres bien au chargement du datagrid ou encore lors de la desactivation via la dialog.
    Lorsque l'on modifie un utilisateur la ligne devient verte en mettant une valeur dans un champ caché du datagrid.

    Mon soucis est le rafraichissement de cet event onstylerow car si par exemple je teste un desactivation la ligne devient grise immediatement par contre si je le reactive de suite apres, il faut que je navigue dans le datagrid pour qu'enfin elle change de couleur.

    Voici le code de mon event :

    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
     
    <script type="dojo/method" event="onStyleRow" args="row">
            var item = tableau.getItem(row.index);
            if (item) {
    		var React = donnees.getValue(item, "Reactive", null);
    		var Desact = donnees.getValue(item, "Desactive", null);
    		var modif = donnees.getValue(item, "modif", null);
                //si une cellule Desactive contient la valeur 1 on met un fond gris sur la ligne
    		if (Desact == 1) {
                            row.customStyles = "background-color:gray;";
                    } 
    		//si une cellule modif contient la valeur 1 on met un fond vert sur la ligne
    		if(modif == 1){
    			row.customStyles = "background-color: #C4FFC4;";
    		}
                    //si une cellule Reactive contient la valeur 1 on met un fond mauve sur la ligne
    		if (React == 1) {
                            row.customStyles = "background-color: #BBBBFF;";
                     } 
            }
            tableau.focus.styleRow(row);
            tableau.edit.styleRow(row);
        </script>
    Y a t'il un moyen de forcer cet event une fois un changement effectué sur une ligne ?

    Merci d'avance pour vos réponses !

  2. #2
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut ?!
    Je ne comprends pas. C'est la même fonction appelée au même endroit pour le même genre de manipulation, non ?
    La seule différence que je vois, c'est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    row.customStyles = "background-color:gray;";
    row.customStyles = "background-color: #BBBBFF;";
    Est-ce que si vous désactivez, réactivez, ça devient mauve directement ?

  3. #3
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 322
    Par défaut
    Oui cette fonction determine quelle couleur doit prendre la ligne en fonction du champs renseigne.
    Lorsque je desactive, la variable React = 0 et Desact = 1 et la ligne devient grise.
    Par contre, lorsque je reactive, la variable React = 1 et Desact = 0 mais la ligne ne devient pas mauve immediatement, il faut que je fasse en sorte que le datagrid se rafraichisse. Comme il y a beaucoup de lignes il me suffit de descendre un peu et quand je reviens ma ligne est mauve.

  4. #4
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Oui mais c'est que je ne comprends pas c'est que la ligne devient bien grise sans raffraichissement.

  5. #5
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 322
    Par défaut
    Oui moi aussi
    J'ai l'impression qu'il scanne une fois puis s'il y a action sur le datagrid il rescanne mais pas avant.

Discussions similaires

  1. [phpToPDF] Couleurs de fond alternatives une ligne sur 2
    Par fred23195 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 10/08/2010, 14h56
  2. [POO] Changer la couleur de fond d'une ligne de tableau
    Par guidav dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 30/04/2008, 15h27
  3. Changement couleur de fond d'une ligne avec FLEXGRID
    Par flophil78 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 25/01/2008, 19h22
  4. Comment changer la couleur de fond d'une ligne du TRichEdit
    Par tibi666 dans le forum Composants VCL
    Réponses: 2
    Dernier message: 28/09/2005, 17h31
  5. [JTable] Modifier la couleur de fond d'une ligne
    Par joes_bushi dans le forum Composants
    Réponses: 2
    Dernier message: 20/09/2005, 12h13

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