Bonjour à tous,
Dans le cadre d'un projet, je dois créer une interface graphique qui s'adapte à n'importe quelle type d'écran, donc de résolution.
Pour placer mes Labels, Images etc ...., j'utilise la méthode SetBounds(int, int, int, int) pour le moment.
Mais je voulais savoir si il existe une méthode équivalente à : SetBounds(float, float, float, float).
J'ai fait quelques recherches, j'ai trouvé une méthode faisant cela, mais cela s'applique seulement sur les Rectangles. Or, j'aimerai utiliser cette méthode sur des Labels, Texts, Image et ArrayList entre autres.
Pour placer mes Objets, je sais qu'il existe les Layouts mais mon cahier des charges me l'interdit malheureusement( cela simplifie beaucoup trop les choses pour mes profs
)
Et pour s'adapter à n'importe quel type d'écran, j'ai utilisé l'attribut SWT.Resize :
Mais malheureusement, la taille de la police ne change pas en fonction de la taille de la fenêtre. Donc je me retrouve avec des Labels contenant "njou" alors qu'initialement il devrait dire "Bonjour" par exemple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 shell.addListener(SWT.Resize, new Listener() { public void handleEvent(Event event) { labelA.setBounds(1,2,3,4); } } );
J'ai également essayé d'utiliser une ScrollBar ( cela me permettrait d'avoir des positions d'objets fixes ) mais j'arrive juste à la faire apparaître. Je n'arrive pas à faire en sorte que la fenêtre se décale.
Donc si vous avez quelques solutions à me proposer, n'hésitez pas
Merci d'avance pour vos réponses
Partager