SWT - Comment avez-vous re-taille/taille de l'ensemble d'un Composite résidant à l'intérieur d'un autre composite?
//J'ai un composite à l'intérieur d'un défilé en composite.
final Composite c = new Composite(scrolledComposite, SWT.NONE); //1
c.setBackground(SWTResourceManager.getColor(SWT.COLOR_WHITE));
c.setLayout(new GridLayout(1, false));
//J'ai une boucle qui ajoute des composites composite c
for(int i = 0; i<100; i++){
Composite b = new Composite(c, SWT.BORDER);
b.setBackground(SWTResourceManager.getColor(SWT.COLOR_LIST_SELECTION));
b.setLayout(new GridLayout(2, false));
b.setBounds(112, 70, 268, 69);
//et puis certains contrôleurs ajoutée à l'intérieur du composite
Label lblNewLabel_2 = new Label(b, SWT.NONE);
lblNewLabel_2.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 4));
Image img = new Image(Display.getCurrent(), result.get(i).getPicturePath());
//.... more controllers.
//enfin je termine la boucle et ajouter plus à l'extérieur en composite pour un défilé composite.
} //end loop
scrolledComposite.setContent(c); //setter content!
scrolledComposite.setMinSize(c.computeSize(SWT.DEFAULT, SWT.DEFAULT));
Tout cela fonctionne très bien, presque. Mon problème est que l'intérieur composite habitude de répondre à la méthode setBounds. Peu importe ce que je suis en train d'écrire dans celui-ci je ne peux pas obtenir à développer. Je soupçonne que cela a quelque chose à voir avec les mises en page.
Quelqu'un a une idée?
Merci d'avance.
Petter
Vous devez vous connecter pour publier un commentaire.
Mises en page sont les objets que définir la taille et l'emplacement de composite enfants de sorte que vous n'aurez pas à l'appel
setBounds()
pour chacun d'eux. Découvrez La compréhension des schémas de SWT.Quel est le but de la Disposition dans SWT applications?
Envisager un Redimensionnement de l'écouteur dans votre panneau extérieur de l'avoir à ajuster votre panneau intérieur.