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

BIRT Discussion :

Afficher les bordures d'un tableau en noir


Sujet :

BIRT

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 77
    Points : 49
    Points
    49
    Par défaut Afficher les bordures d'un tableau en noir
    Bonjour,

    Je voudrais créer un tableau, et afficher les bordures en noir, et mettre une couleur de fond.

    Je crée donc mon tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TableHandle table = eFactory.newTableItem("table", 3, 1, 1, 1);
    eFactory est un ElementFactory.

    Et maintenant, comment faire pour afficher les bordures en noirs, et mettre une couleur de fond?

    Merci.

  2. #2
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Bonjour,

    Tu récupères le style avec getStyle() et ensuite tu ajoutes les propriétés de style que tu veux. C'est du pur CSS.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    Ok, merci beaucoup, je devrais pouvoir y arriver

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    Bon, comme je m'en doutais un peu, je ne comprend pas ^^

    Donc je déclare mon tableau, je fais un getStyle()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    TableHandle table = eFactory.newTableItem("table", 3, 1, 1, 1);
    table.getStyle();
    et ensuite tu ajoutes les propriétés de style que tu veux
    Comment faire pour ajouter les propriétés de style que je veux?
    setStyle() ? Si c'est ca, je ne comprend pas ce que je dois passer en paramètre !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    Bon j'ai légerement progréssé dans mon problème.

    Je suis parti du principe (qui j'espère est juste) que pour modifier les propriétés de style, il faut faire un setStyle()

    Il faut passer en paramètre de cette fonction un SharedStyleHandle.

    J'ai donc importé la librairie SharedStyleHandle, et déclaré ma variable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SharedStyleHandle Bordure;
    table.setStyle(Bordure);
    Donc ma question, plus précise que tout à l'heure, comment faire pour initialiser mon attribut Bordure, de sorte à correspondre mettre des bordures à mon tableau?

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 25
    Points : 25
    Points
    25
    Par défaut
    Bonjour,

    Deux méthodes sont possibles pour réaliser ce que tu veux faire :
    - utilisation du SharedStyleHandle
    - utilisation du PrivateStyleHandle

    SharedStyleHandle est un style partagé par tous les éléments du rapport aussi il faut l'instancier à part :
    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
     
    [...]
    ReportDesignHandle design = session.createDesign();
    ElementFactory factory = design.getElementFactory();
     
    /*
    * Création d'un Style à partager
     * 
     */
    //Récupération du style via la fabrique
    SharedStyleHandle sharedStyleHandle =factory.newStyle("MonStyleEnPartage");
     
    //Création d'une couleur de fond
    ColorHandle colorHandleFond = sharedStyleHandle.getBackgroundColor();
    colorHandleFond.setValue("red");
     
    //Création des bordures
    	sharedStyleHandle.setBorderBottomStyle(DesignChoiceConstants.LINE_STYLE_SOLID);
    		sharedStyleHandle.setBorderTopStyle(DesignChoiceConstants.LINE_STYLE_SOLID);
    			sharedStyleHandle.setBorderRightStyle(DesignChoiceConstants.LINE_STYLE_SOLID);
    			sharedStyleHandle.setBorderLeftStyle(DesignChoiceConstants.LINE_STYLE_SOLID);
     
    //Création de couleurs pour les bordures
    ColorHandle colorHandleBordureInferieure = sharedStyleHandle.getBorderBottomColor();
    colorHandleBordureInferieure.setValue("black");
    ColorHandle colorHandleBordureSuperieure = sharedStyleHandle.getBorderTopColor();
    colorHandleBordureSuperieure.setValue("black");
    ColorHandle colorHandleBordureDroite = sharedStyleHandle.getBorderRightColor();
    colorHandleBordureDroite.setValue("black");
    ColorHandle colorHandleBordureGauche = sharedStyleHandle.getBorderLeftColor();
    colorHandleBordureGauche.setValue("black");
     
    //Ajout du style au rapport
    design.getStyles().add(sharedStyleHandle);
     
     
     
    [...]

    Une fois que tu as fait cela tu peux ensuite appliquer ton style à ton TableHandle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    tableHandle.setStyleName("MonStyleEnPartage");

    Deuxième méthode qui est plus sur la lignée de ce que tu étais en train de faire : tu récupère le style spécifique de ton Table Handle que tu 'customize' comme tu le souhaite :

    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
     
    /*
    * Récupération du gestionnaire de style privé
    * 
    * */
     
    //Création des bordures
    StyleHandle gestionnaireDeStyle = tableHandle.getPrivateStyle();
    gestionnaireDeStyle.setBorderBottomStyle(DesignChoiceConstants.LINE_STYLE_SOLID);
    gestionnaireDeStyle.setBorderTopStyle(DesignChoiceConstants.LINE_STYLE_SOLID);
    gestionnaireDeStyle.setBorderRightStyle(DesignChoiceConstants.LINE_STYLE_SOLID);
    gestionnaireDeStyle.setBorderLeftStyle(DesignChoiceConstants.LINE_STYLE_SOLID);
     
     
     
    //Couleur de Fond
    ColorHandle colorHandleFond = gestionnaireDeStyle.getBackgroundColor();
    colorHandleFond.setValue("red");
     
    //Attribution de couleur aux bordures
    ColorHandle colorHandleBordureInferieure = gestionnaireDeStyle.getBorderBottomColor();
    colorHandleBordureInferieure.setValue("black");
    ColorHandle colorHandleBordureSuperieure = gestionnaireDeStyle.getBorderTopColor();
    colorHandleBordureSuperieure.setValue("blue");
    ColorHandle colorHandleBordureDroite = gestionnaireDeStyle.getBorderRightColor();
    colorHandleBordureDroite.setValue("blue");
    ColorHandle colorHandleBordureGauche = gestionnaireDeStyle.getBorderLeftColor();
    colorHandleBordureGauche.setValue("blue");
    La plupart des objets de la DEAPI ne sont pas accessibles directement mais via un 'gestionnaire' (Handle). En effet, il existe tout un tas de liens entre les différentes classes de l'API, et instancier un objet à part impliquerait de mettre soi-même à jour tous les liens entre les différents objets de l'API, ce qui n'est pas réalisable (ou grosse prise de tête).
    Du coup à chaque coup ou presque qu'on a besoin d'un élément on peut être sûr qu'il y a un Handle qui se charge de tout.

    Bon j'espère avoir répondu à ton problème.
    A+

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    Waouu !

    Bah merci beaucoup, j'étais très très loin de développer un tel code, je pensais que se serait beaucoup plus simple que ca!

    Donc je vais me pencher sur ton code pour tout d'abord le comprendre, et vérifier ensuite s'il répond bien à mon besoin

    Merci beaucoup !

  8. #8
    Membre expérimenté

    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 143
    Points : 1 353
    Points
    1 353
    Par défaut Note
    Tu peux également utiliser un CSS externe ou encore créer un CSS dand BIRT et l'utiliser. Ensuite il suffit d'utiliser ce sytle et l'appliquer ( setStyle )

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

Discussions similaires

  1. afficher les elements d'un tableau dans select
    Par koukoya dans le forum Struts 1
    Réponses: 6
    Dernier message: 19/05/2008, 19h44
  2. Afficher les donnees d'un tableau dans un graphique
    Par amel666 dans le forum Graphisme
    Réponses: 3
    Dernier message: 07/06/2007, 11h27
  3. Probleme d'affiche des bordures d'un tableau avec DOCTYPE
    Par TangoZoulou dans le forum Mise en page CSS
    Réponses: 11
    Dernier message: 02/02/2007, 13h38
  4. Enlever les bordures d'un tableau
    Par tochbee dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 04/08/2006, 21h43
  5. [HTML] Arrondir les bordures d’un tableau
    Par Furius dans le forum Balisage (X)HTML et validation W3C
    Réponses: 12
    Dernier message: 11/01/2006, 09h41

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