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 :

[SWT]Sélection dans un Table


Sujet :

SWT/JFace Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 68
    Par défaut [SWT]Sélection dans un Table
    bonjour ,
    je début avec SWT et en java en gros

    j'aimerai savoir comment peut on sélectionner les valeurs de la célulle sélectionnée, sous forme d'un tableau que je pourai "caster" ensuite

    merci de votre aide précieuse

    Rocel

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Août 2006
    Messages : 218
    Par défaut
    Voici un exemple honteusement inspiré du site eclipse.org qui fait ce que tu veux :

    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
    52
    53
    54
    55
    56
    57
     
    import org.eclipse.swt.*;
    import org.eclipse.swt.graphics.*;
    import org.eclipse.swt.widgets.*;
     
    public class Exemple {
     
        /**
         * @param args
         */
        public static void main(String[] args) {
            Display display = new Display();
            Shell shell = new Shell(display);
            final Table table = new Table(shell, SWT.BORDER | SWT.V_SCROLL| SWT.FULL_SELECTION);
            table.setHeaderVisible(true);
            table.setLinesVisible(true);
            final int rowCount = 64, columnCount = 4;
            for (int i = 0; i < columnCount; i++) {
                TableColumn column = new TableColumn(table, SWT.NONE);
                column.setText("Colonne " + i);
            }
            for (int i = 0; i < rowCount; i++) {
                TableItem item = new TableItem(table, SWT.NONE);
                for (int j = 0; j < columnCount; j++) {
                    item.setText(j, "Cellule numéro " + i + "-" + j);
                }
            }
            for (int i = 0; i < columnCount; i++) {
                table.getColumn(i).pack();
            }
            Point size = table.computeSize(SWT.DEFAULT, 200);
            table.setSize(size);
            shell.pack();
            table.addListener(SWT.MouseDown, new Listener() {
                public void handleEvent(Event event) {
                    Point pt = new Point(event.x, event.y);
                    TableItem item = table.getItem(pt);
                    if (item == null)
                        return;
                    for (int i = 0; i < columnCount; i++) {
                        Rectangle rect = item.getBounds(i);
                        if (rect.contains(pt)) {
                            int index = table.indexOf(item);
                            System.out.println("Sélection de la ligne " + index + " - colonne " + i + ":valeur '"+ item.getText() +"'");
                        }
                    }
                }
            });
            shell.open();
            while (!shell.isDisposed()) {
                if (!display.readAndDispatch())
                    display.sleep();
            }
            display.dispose();
        }
     
    }

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 68
    Par défaut
    merci

    j'ai réussis a faire ce qui m'interessait , cependant dans ton exemple, le numéro de la colonne sélectionnée est toujours "0" chez moi, mais je m'en suis passé
    +
    Rocel

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Août 2006
    Messages : 218
    Par défaut
    Cool

    N'oublie pas de déclarer le sujet comme "résolu" !

    Laurent

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 68
    Par défaut
    ok je ne trouvais plus le "Résolu"

    je met mon code modifié au cas ou il intéresse quelqu'un, il est plus symple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Table.addListener(SWT.MouseDown, new Listener() {
    	public void handleEvent(Event event) {
    		Point pt = new Point(event.x, event.y);
    		TableItem item = Table.getItem(pt);
    		System.out.println("celulle0: " + item.getText(0));
    		System.out.println("celulle3: " + item.getText(3));
    	}
    });

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

Discussions similaires

  1. [WB16] Sélection dans une table non AJAX
    Par basam95 dans le forum WebDev
    Réponses: 0
    Dernier message: 06/02/2011, 15h37
  2. Sélection dans plusieurs table
    Par WalidNat dans le forum Langage SQL
    Réponses: 1
    Dernier message: 10/02/2009, 19h01
  3. Text SWT.MULTI dans une table
    Par soft-war dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 29/04/2008, 15h41
  4. [SWT] ProgressBar dans une Table
    Par spi dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 12/01/2005, 13h58

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