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

Eclipse Java Discussion :

Images au centre ds une TableColumn ?


Sujet :

Eclipse Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 77
    Points : 37
    Points
    37
    Par défaut Images au centre ds une TableColumn ?
    Bonjour,

    j'ai un petit souci technique : dans une View que j'ai crée, j'ai un TableViewer
    dans lequel j'affiche des éléments en colonne. Ces éléments sont composés
    d'un texte et de plusieurs images ... Le texte dans la 1ère colonne, puis des
    images dans les suivantes.

    Je définis donc le bon nombre de TableColumn avec en paramètre le
    style valant SWT.CENTER !
    En pratique, les images ne sont pas centrées alors qu'avec du texte, y'a pas de
    soucis !!!
    Autre chose : avec la methode setImage(my_img), l'image s'affiche bien au
    centre dans la 1ère ligne (le titre de la colonne). Après, tableViewer.add(element)
    affiche bien les images dans les lignes suivantes mais pas centrées !
    alors que le texte dans toute la première colonne l'est !
    J'avoue que je comprend pas

    Quelqu'un serait-il capable de me dire ce qui ne va pas, ce que j'ai oublié ou
    fait comme ânerie ???

    D'avance, Merci

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 77
    Points : 37
    Points
    37
    Par défaut
    En fait peut-etre que ca pourrait aider si je mettais le code de ma methode
    createPartControl() :

    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
    44
    45
    46
    47
    48
    49
    50
    51
     
    viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    //Ajout du LabelProvider muni des fonctions getColumnImage() et getColumnText()
    viewer.setLabelProvider(new myNewLabelProvider());
    Table table = viewer.getTable();
     
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    table.setBounds(10, 10, 400, 400);
     
    TableLayout tableLayout = new TableLayout();
    table.setLayout(tableLayout);
     
    //1ere colonne reservee a du texte
    TableColumn tc1 = new TableColumn(table, SWT.RIGHT);
    tc1.setImage(une_img); //AFFICHAGE DE L'IMAGE BIEN AU CENTRE
    tc1.setResizable(false);
    tc1.setMoveable(false);
     
    TableColumn tc2 = new TableColumn(table, SWT.CENTER);
    tc2.setText("titre de ma 1ere colonne");
    tc2.setResizable(false);
    tc2.setMoveable(true);
     
    TableColumn tc3 = new TableColumn(table, SWT.CENTER);
    tc3.setText("titre de ma 2eme colonne");
    tc3.setResizable(false);
     tc3.setMoveable(true);
     
    //derniere colonne, vide
    TableColumn lastc = new TableColumn(table, SWT.CENTER);
    lastc.setText("");
    lastc.setResizable(false);
    lastc.setMoveable(false);
     
    int n = table.getColumnCount();
    for(int i = 0; i < n; i++) {
         TableColumn tc = table.getColumn(i);
         tc.pack();            
         if(i < n-1) {
              tc.addSelectionListener(new mySelectionListener());
         }
    }
     
    viewer.setSorter(new myViewSorter());
     
    makeActions();
    hookContextMenu();
    hookSelectAction();
    hookDoubleClickAction();
    contributeToActionBars();
    En ce qui concerne le remplissage de la view (depuis une autre methode) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    //element compose d'un texte et de 2 images
    //le texte dans la 1ere colonne, des images dans les 2eme et 3eme colonnes
    myViewElement e = new myViewElement();
     
    e.colon1 = "mon_texte";
    e.colon2 = mon_img1;
    e.colon3 = mon_img2;
     
    viewer.add(e);
    // => texte centré, image a gauche !!!
    Je précise pour finir que j'ai essayé de remplacer toutes les images par du texte,
    et le texte se retrouve bien placé au centre des 'cellules', LUI !

Discussions similaires

  1. Placer une image au centre d'une fenêtre
    Par lucciana dans le forum Débuter
    Réponses: 7
    Dernier message: 03/03/2011, 15h54
  2. centre d'une ellipse dans une image
    Par siddi dans le forum Traitement d'images
    Réponses: 12
    Dernier message: 20/05/2008, 13h43
  3. Inserer un texte ou image au centre d'une page
    Par katie dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/10/2007, 18h51
  4. Réponses: 4
    Dernier message: 27/06/2007, 23h45
  5. [VB6] Affichage centré d'une image
    Par Sophie2097 dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 12/05/2006, 14h28

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