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

SWT/JFace Java Discussion :

Problème d'affichage de Table


Sujet :

SWT/JFace Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 151
    Par défaut Problème d'affichage de Table
    Bonjour à tous,


    Je cherche à modifier le comportement par défaut d'un Table (SWT), pour pouvoir sélectionner plusieurs cellules de façon indépendante.
    Un peu faire comme cette exemple :
    http://matrexblog.blogspot.com/2007/...-in-table.html

    La 1ere étape a "d'annuler" le comportement par défaut, c'est à dire de ne pas avoir la ligne sélectionné d'une autre couleur.

    J'ai trouvé des exemples pour faire ça, dont sur eclipse.org (voir exemple 3), qui consiste donc à modifier l'événement juste avant que l'objet soit dessiner.

    Seulement ça ne se passe pas exactement comme prévu, j'arrive bien à modifier le background pour y mettre ce que je souhaite (ici le même fond que les lignes non sélectionnée : blanc), mais le texte (foreground) lui, je n'arrive pas à le modifier ! Quoi que je fasse, il prend la couleur d'une ligne sélectionné, à savoir : blanc. Donc blanc sur blanc, vous devinez qu'on ne voit rien !

    Je ne trouve pourtant pas pourquoi j'ai ce comportement, je n'ai rien trouvé dans ce sens sur le Web, et les exemples trouvé avec capture montre le contraire.

    Je ne suis pas expert en SWT, étant plutôt dév J2EE à la base, je viens donc chercher un peu d'aide !

    Voici le petit bout de code qui "annule" la sélection (de façon visuelle, de façon logique la ligne reste sélectionnée) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    this.table.addListener(SWT.EraseItem, new Listener()
    {
        public void handleEvent(Event event)
        {
            event.detail &= ~SWT.HOT;
     
                    //tentative de forcer la couleur du text a noir : ne fonctionne pas
            TableItem item = (TableItem)event.item;
            item.setForeground(unselectForegroundColor);
     
            //on annule l'evement "selection"
            event.detail &= ~SWT.SELECTED;
        }            
    });
    Quelqu'un aurait-il une idée du problème ?

    Merci d'avance pour votre aide.

  2. #2
    Membre Expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Par défaut
    Salut,

    Essaye plutôt de mettre à jour la couleur de premier plan utilisé par le GC (Graphics Context):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    event.gc.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_BLACK));
    Voilà, à+
    Gueritarish

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 151
    Par défaut
    Citation Envoyé par Gueritarish Voir le message
    Salut,

    Essaye plutôt de mettre à jour la couleur de premier plan utilisé par le GC (Graphics Context):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    event.gc.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_BLACK));
    Voilà, à+
    Gueritarish


    Bon, ça marche, bien que ça me perturbe car avant d'avoir utilisé les methodes du tableItem j'utilisais justement le GC.

    Bref, en tout cas le problème est résolu, même si dans les exemples que je trouve je ne devrais rien avoir à faire sur le foreground pour annuler le comportement.


    Merci

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

Discussions similaires

  1. [8.3] Problème d'affichage des tables
    Par selmagsi dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 16/05/2014, 10h49
  2. [Wamp] Migration d'une base de données (Problème d'affichage des tables)
    Par betadev dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 17/02/2013, 12h10
  3. problème d'affichage de table
    Par david77320 dans le forum WinDev
    Réponses: 7
    Dernier message: 30/10/2007, 10h42
  4. Problème d'affichage de tables
    Par supevents dans le forum Dreamweaver
    Réponses: 1
    Dernier message: 09/05/2007, 09h38
  5. Problème d'affichage des tables
    Par talere dans le forum Access
    Réponses: 6
    Dernier message: 24/10/2005, 13h02

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