Bonjour,
Je suis en train de créer une application RCP avec Eclipse. L'interface est en JFace/SWT. Quelle est la meilleur approche afin que cette application soit affichée de manière correcte sur différentes tailles d'écran. Je désire qu'elle prenne tout l'écran et que si on la fait plus petite, des ascenseurs apparaissent sur les côtés.
Voici comment j'ai procédé jusqu'à maintenant:
A la base de chacune de mes vues et shells j'ai mis un scrolledcomposite:
Les Vues sont donc constituées de la sorte:
ViewName --> parent --> top --> ScrolledComposite --> Composite --> boutons, composites etc...
Les Shells sont constitués de la sorte:
Shell --> ScrolledComposite --> Composite --> boutons, composites etc...
et voici le code de mes ScrolledComposite:
Et cela semble marcher. A chaque fois que je diminue la taille de la fenêtre des ascenseurs apparaissent. J'ai néanmoins quelques questions:
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 private void createScrolledComposite() { scrolledComposite = new ScrolledComposite(top, SWT.V_SCROLL | SWT.H_SCROLL); createComposite(); scrolledComposite.setExpandHorizontal(true); // Generated scrolledComposite.setExpandVertical(true); // Generated /*set the size, that when the view is this size,the scrollbars should appear * NOTE: the next two lines are only use if expand * horizontal or vertical are used.*/ scrolledComposite.setMinHeight(768); scrolledComposite.setMinWidth(1024); /*now we need to the tell the scrollbarcontainer * * to listen for changes in the size of container * NOTE:if you call this method before setting the * * above params, the widget will not show, until after * * the view is manually resized by the user*/ scrolledComposite.setContent(composite); // Generated }
- taille optimale ? Quelle taille de départ est la mieux p.ex pour écran 17 pouces ? Visual Editor ne permet pas d'aller au dela de 999 en longueur...
- procédure correcte ? Si non, quel est la procédure ?
- J'ai vu que l'on peut utiliser shell.pack() et composite.pack () mais je ne sais pas trop si je dois rajouter encore ça ou pas. Si oui lequel des deux pour mes Shells, et pourquoi ?
Merci d'avance pour vos suggestions/remarques
Partager