Comment ajouter de la barre de défilement pour Vaadin mise en page
J'ai trouvé beaucoup de questions où les gens se demandent comment masquer les barres de défilement dans Vaadin mises en page, mais mon problème est que Vaadin ne pas afficher des barres de défilement.
Par exemple je peux avoir ce code:
HorizontalLayout layout = new HorizontalLayout();
layout.setSizeUndefined(); //I also tried setSizeFull()
for(Integer i = 1; i <= 15; i++) {
layout.addComponent(new Button("Test button #" + i.toString());
}
Mais lorsque j'exécute ce code, les boutons de la page sont tout simplement à couper lors de la fenêtre du navigateur est trop petite pour contenir tous. Pas de barres de défilement apparaîtra jamais.
J'ai aussi essayé de créer le Panneau, puis ajouter à ma disposition à ce panneau. J'ai testé les deux - panel.addComponent(foo)
et aussi panel.setContent(foo)
, et j'ai tenté de panel.setScrollable(true)
trop. Sans aucun succès.
Est-il possible d'ajouter la barre de défilement à une sorte de Vaadin mise en page? J'utilise Vaadin 6.8.7.
Merci à l'avance!
Il y a mon code complet:
private ComponentContainer openZoomifyLayout() {
Panel panel = new Panel();
Panel panel2 = new Panel();
middlePanel = new MiddlePanel();
VerticalLayout mw = new VerticalLayout();
mw.setSizeFull();
HorizontalLayout sp = new HorizontalLayout();
Panel photos = new Panel();
photos.setSizeUndefined();
mw.addComponent(panel);
mw.addComponent(panel2);
mw.addComponent(sp);
mw.setExpandRatio(sp, 99);
mw.setExpandRatio(panel, 0);
mw.setExpandRatio(panel2, 0);
panel2.addComponent(middlePanel);
mw.setComponentAlignment(panel, Alignment.TOP_CENTER);
mw.setComponentAlignment(panel2, Alignment.TOP_CENTER);
photos.setContent(table);
photos.setScrollable(true);
sp.addComponent(photos);
sp.addComponent(createMainDetail());
return mw;
}
Cette méthode est utilisée dans la classe qui s'étend de la Fenêtre, et donc dans le temps de l'initialisation est là: setContent(openZoomifyLayout());
J'ai ajouté le code de la page principale.. 🙂
OriginalL'auteur Firzen | 2014-04-09
Vous devez vous connecter pour publier un commentaire.
Votre
sp
HorizontalLayout
et votrephotos
Panel
doivent être de taille complète.Comme vous pouvez le lire dans le Vaadin chapitre de Livre 6.6.1
OriginalL'auteur nexus
Vous aurez besoin d'un panneau. Vous devez également vous assurer que le panneau de la taille est fixe et pas "naturel". Si sa taille est "naturel", le groupe spécial va être agrandie jusqu'à ce que son contenu ne peut être affiché entièrement. La taille par défaut pour les panneaux est naturel, et c'est la raison pour laquelle vous ne voyez pas des barres de défilement.
OriginalL'auteur blubb
Suivez ces étapes:
v-scrollable
par exemple
Cela rendra le
CustomComponent
afficher une barre de défilement tout encontent
se développe en tant que de besoin.OriginalL'auteur geert3