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/Tree] Problème de redimensionnement


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
    Décembre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 96
    Par défaut [SWT/Tree] Problème de redimensionnement
    Bonjour,

    je viens de me mettre à SWT (et aux IHM en général) et j'ai déjà un petit soucis...
    Je vous explique.

    Je voudrais mettre en place 2 Tree l'un en dessous de l'autre.
    Pour chaque Tree, j'insère un TreeItem auquel j'associe plusieurs TreeItem fils.
    Jusque là pas de pb.

    Sauf que quand je veux "expand" mes Tree, il n'y a pas de redimensionnement des différents GridLayout et GridData.
    2 images en pièce jointe pour illlustrer cela.

    Je pense que ce n'est pas très clair, donc je met le code source ci-dessous.
    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
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    package perso.swt.test;
     
    import org.eclipse.swt.events.TreeEvent;
    import org.eclipse.swt.events.TreeListener;
    import org.eclipse.swt.graphics.Color;
    import org.eclipse.swt.layout.GridData;
    import org.eclipse.swt.layout.GridLayout;
    import org.eclipse.swt.widgets.*;
    import org.eclipse.swt.*;
     
    public class TestSWT1 {
     
     
    	private static Composite comp = null;
     
     
    	public static void main(String[] args) {
    		Display display = new Display();
     
    		Shell shell = new Shell(display);
    		comp = new Composite(shell, SWT.NONE);
    		comp.setSize(320, 320);
    		Layout layout = new GridLayout();
    		comp.setLayout(layout);
    		comp.setBackground(new Color(display,255,255,255));
     
    		fill(comp);
    		comp.pack();
    		//shell.pack();
    		shell.open();
     
    		while (!shell.isDisposed())
    			if (!display.readAndDispatch())
    				display.sleep();
     
    		display.dispose();
     
    	}
     
    	private static void fill(final Composite comp) {
    		GridData data = new GridData(SWT.FILL, SWT.FILL, true, false);
    		final Tree tree = new Tree(comp, SWT.CHECK);
    		tree.setLayoutData(data);
    		tree.addTreeListener(new TreeListener() {
     
    			public void treeCollapsed(TreeEvent arg0) {
    				((GridData) tree.getLayoutData()).grabExcessVerticalSpace=false;
    				comp.pack();
    			}
     
    			public void treeExpanded(TreeEvent arg0) {
    				((GridData) tree.getLayoutData()).grabExcessVerticalSpace=true;
    				comp.pack();
    			}
    		});
     
    		TreeItem services = new TreeItem(tree,SWT.CHECK);
    		services.setText("services");
    		TreeItem it1 = new TreeItem(services,SWT.CHECK);
    		it1.setText("item 1");
    		TreeItem it2 = new TreeItem(services,SWT.CHECK);
    		it2.setText("item 2");
    		TreeItem it3 = new TreeItem(services,SWT.CHECK);
    		it3.setText("item 3");
    		TreeItem it4 = new TreeItem(services,SWT.CHECK);
    		it4.setText("item 4");
     
     
     
    		GridData data2 = new GridData(SWT.FILL, SWT.FILL, true, false);
    		final Tree tree2 = new Tree(comp, SWT.CHECK);
    		tree2.setLayoutData(data2);
    		tree2.addTreeListener(new TreeListener() {
     
    			public void treeCollapsed(TreeEvent arg0) {
    				((GridData) tree2.getLayoutData()).grabExcessVerticalSpace=false;
    				comp.pack();
    			}
     
    			public void treeExpanded(TreeEvent arg0) {
    				((GridData) tree2.getLayoutData()).grabExcessVerticalSpace=true;
    				comp.pack();
    			}
    		});
     
    		TreeItem contracts = new TreeItem(tree2,SWT.CHECK);
    		contracts.setText("contracts");
    		TreeItem it1C = new TreeItem(contracts,SWT.CHECK);
    		it1C.setText("item 1");
    		TreeItem it2C = new TreeItem(contracts,SWT.CHECK);
    		it2C.setText("item 2");
    		TreeItem it3C = new TreeItem(contracts,SWT.CHECK);
    		it3C.setText("item 3");
    		TreeItem it4C = new TreeItem(contracts,SWT.CHECK);
    		it4C.setText("item 4");
    		TreeItem it5C = new TreeItem(contracts,SWT.CHECK);
    		it5C.setText("item 5");
    		TreeItem it6C = new TreeItem(contracts,SWT.CHECK);
    		it6C.setText("item 6");
    	}
    }
    Voilà, si vous avez une idée pour moi, merci d'avance.

    Nico
    Images attachées Images attachées   

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 96
    Par défaut
    Bonjour à tous.

    J'ai passé ma journée sur ce problème et je n'ai pas avancé d'un pouce.
    Aucune des personnes de mon projet ne s'y connait en IHM... Conclusion je patauge.

    Je vais continuer à essayer d'avancer demain.

    Nico

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 96
    Par défaut
    Bonjour, j'ai trouvé une solution satisfaisante ..
    Je crée un Tree, puis deux TreeItem ayant pour papa le Tree.
    Et pour chacun de ces TreeItem je leur file des TreeItem fils...
    Et là çà marche!

    Nico

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

Discussions similaires

  1. [SWT][LINUX] Problèmes d'affichage
    Par BiM dans le forum SWT/JFace
    Réponses: 4
    Dernier message: 11/06/2006, 16h27
  2. [CSS] problème de redimensionnement
    Par cootchy dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 14/02/2006, 17h42
  3. [SWT][Layout]problème de redimensionnement d'un Text
    Par McFoggy dans le forum SWT/JFace
    Réponses: 1
    Dernier message: 05/08/2004, 12h10
  4. Problème de redimensionnement
    Par routouf dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 16/07/2004, 16h27
  5. Problème de redimensionnement
    Par david71 dans le forum Agents de placement/Fenêtres
    Réponses: 6
    Dernier message: 14/05/2004, 17h39

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